帝国CMS用户信息反馈发送到邮箱里方法如下。
方法请修改e/class/q_functions.php文件,请看如下代码,红色为新加入的代码
//提交反馈信息
83行左右找到函数function AddFeedback($add)
236行找到代码:
//更新附件
UpdateTheFileOther(4,$fid,$filepass,'other');
ecmsEmptyShowKey($keyvname);//清空验证码
if($sql)
{
添加代码:
$feed_id = $empire->lastid();
$feedback_body = feedback_body($feed_id);
@include(ECMS_PATH.'e/class/SendEmail.inc.php');
EcmsToSendMail('要发送的邮件地址',$feedback_body[1],$feedback_body[2]);
再添加自定义函数feedback_body:
/*----信息反馈内容----*/
function feedback_body($id)
{
global $empire,$dbtbpre,$level_r,$public_r;
$r=$empire->fetch1("select * from {$dbtbpre}enewsfeedback where id='$id' limit 1");
$br=$empire->fetch1("select bname,enter,filef from {$dbtbpre}enewsfeedbackclass where bid='$r[bid]'");
$username="游客";
if($r['userid'])
{
$username="<a href='../member/AddMember.php?enews=EditMember&userid=".$r['userid']."' target=_blank>".$r['username']."</a>";
}
$record="<>";
$field="<->";
$er=explode($record,$br['enter']);
$count=count($er);
for($i=0;$i<$count-1;$i++)
{
$er1=explode($field,$er[$i]);
//附件
if(strstr($br['filef'],",".$er1[1].","))
{
if($r[$er1[1]])
{
$fileurl=$public_r['fileurl']."p/".$r[$er1[1]];
$val="<b>附件:</b><a href='".$fileurl."' target=_blank>".$r[$er1[1]]."</a>";
}
else
{
$val="";
}
}
else
{
$val=$r[$er1[1]];
}
$feedbackinfo.="<tr bgcolor='#FFFFFF'><td height=25>".$er1[0].":</td><td><div align=left>".nl2br($val)."</div></td></tr>";
}
$body[1]=$br[bname];
$body[2]='<table width="100%" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#8CBDEF"> <tr class=header>
<td height="25" colspan="2" bgcolor="#8CBDEF"><font color="#FFFFFF"> '.$br['bname'].'</font></td>
</tr><tr bgcolor="#FFFFFF">
<td height="25" width="19%">发送时间:</td>
<td height="25" width="81%" align=left>'.date('Y-m-d',time()).'</td>
</tr>'.$feedbackinfo.'</table>';
return $body;
}
此外还要注意,邮件设置发送调的帝国自带的功能,要在后系统设置是设置才能正常发送。如果你能用帝国自带的找回密码邮件发送,这个就能用。
如下图所示: