帝国论坛帝国网站管理系统交流区帝国CMS使用交流[分享][原创]信息反馈发送到邮箱代码 【本版专题贴子】  
 1/9     1 2 3 4 5 6 7 8 9 ›› ›|
主题:[分享][原创]信息反馈发送到邮箱代码 [加入收藏夹]   

wangji309
用户头衔:秀才

精华贴   :0
发贴数   :75
经验值   :422
注册时间:2009-02-10
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
[分享][原创]信息反馈发送到邮箱代码
最近有点客户要求信息反馈要发送到邮箱里,和大家分享一下。
方法请修改e/class/q_functions.php文件,请看如下代码,红色为新加入的代码
//提交反馈信息
function AddFeedback($add){
        global $empire,$dbtbpre,$level_r,$public_r;
        CheckCanPostUrl();//验证来源
        $bid=(int)getcvar('feedbackbid');
        if(empty($bid))
        {
                $bid=intval($add[bid]);
        }
        if(empty($bid))
        {
                printerror("EmptyFeedbackname","history.go(-1)",1);
    }
        //验证码
        $keyvname='checkfeedbackkey';
        if($public_r['fbkey_ok'])
        {
                ecmsCheckShowKey($keyvname,$add['key'],1);
        }
        //版面是否存在
        $br=$empire->fetch1("select bid,enter,mustenter,filef,groupid,checkboxf from {$dbtbpre}enewsfeedbackclass where bid='$bid';");
        if(empty($br['bid']))
        {
                printerror("EmptyFeedback","history.go(-1)",1);
        }
        //权限
        if($br['groupid'])
        {
                $user=islogin();
                if($level_r[$br[groupid]][level]>$level_r[$user[groupid]][level])
                {
                        printerror("HaveNotEnLevel","history.go(-1)",1);
                }
        }
        $pr=$empire->fetch1("select feedbacktfile,feedbackfilesize,feedbackfiletype from {$dbtbpre}enewspublic limit 1");
        //必填项
        $mustr=explode(",",$br['mustenter']);
        $count=count($mustr);

        for($i=1;$i<$count-1;$i++)
        {
                $mf=$mustr[$i];
                if(strstr($br['filef'],",".$mf.","))//附件
                {
                        if(!$pr['feedbacktfile'])
                        {
                                printerror("NotOpenFBFile","",1);
                        }
                        if(!$_FILES[$mf]['name'])
                        {
                                printerror("EmptyFeedbackname","",1);
                        }
                }
                else
                {
                        $chmustval=ReturnFBCheckboxAddF($add[$mf],$mf,$br['checkboxf']);
                        if(!trim($chmustval))
                        {
                            echo $add[$mf].'-'.$mf.'-'.$br['checkboxf'];
                                exit();
                                printerror("EmptyFeedbackname","",1);
                        }
                }
        }

        $saytime=date("Y-m-d H:i:s");
        //字段处理
        $dh="";
        $tranf="";
        $record="<!--record-->";
        $field="<!--field--->";
        $er=explode($record,$br['enter']);
        $count=count($er);
        for($i=0;$i<$count-1;$i++)
        {
                $er1=explode($field,$er[$i]);
                $f=$er1[1];
                //附件
                $add[$f]=str_replace('[!#@-','',$add[$f]);
                if(strstr($br['filef'],",".$f.","))
                {
                        if($_FILES[$f]['name'])
                        {
                                if(!$pr['feedbacktfile'])
                                {
                                        printerror("NotOpenFBFile","",1);
                                }
                                $filetype=GetFiletype($_FILES[$f]['name']);//取得文件类型
                                if(CheckSaveTranFiletype($filetype))
                                {
                                        printerror("NotQTranFiletype","",1);
                                }
                                if(!strstr($pr['feedbackfiletype'],"|".$filetype."|"))
                                {
                                        printerror("NotQTranFiletype","",1);
                                }
                                if($_FILES[$f]['size']>$pr['feedbackfilesize']*1024)//文件大小
                                {
                                        printerror("TooBigQTranFile","",1);
                                }
                                $tranf.=$dh.$f;
                                $dh=",";
                                $fval="[!#@-".$f."-@!]";
                        }
                        else
                        {
                                $fval="";
                        }
                }
                else
                {
                        $add[$f]=ReturnFBCheckboxAddF($add[$f],$f,$br['checkboxf']);
                        $fval=$add[$f];
                }
                $addf.=",`".$f."`";
                $addval.=",'".doaddslashes(RepPostStr($fval))."'";
        }
        $type=0;
        $userid=(int)getcvar('mluserid');
        $username=RepPostVar(getcvar('mlusername'));
        //上传附件
        if($tranf)
        {
                $filepath=date("Y-m-d");
                $path1=ECMS_PATH."d/file/p/".$filepath;
                $mk=DoMkdir($path1);//不存在则建立目录
                $dh="";
                $tranr=explode(",",$tranf);
                $count=count($tranr);
                for($i=0;$i<$count;$i++)
                {
                        $tf=$tranr[$i];
                        //文件名
                        $filetype=GetFiletype($_FILES[$tf]['name']);//取得文件类型
                        $insertfile=md5(uniqid(microtime()));
                        $tranfilename=$insertfile.$filetype;
                        $path=$path1."/".$tranfilename;
                        //上传文件
                        $cp=@move_uploaded_file($_FILES[$tf]['tmp_name'],$path);
                        if($cp)
                        {
                                DoChmodFile($path);
                                //写入数据库
                                $filetime=$saytime;
                                $filesize=(int)$_FILES[$tf]['size'];
                                $classid=(int)$classid;
                                $sql=$empire->query("insert into {$dbtbpre}enewsfile(filename,filesize,adduser,path,filetime,classid,no,type,id,cjid,fpath) values('$tranfilename',$filesize,'[Member]".$username."','$filepath','$filetime',$classid,'[FB]".addslashes(RepPostStr($add[title]))."','$type',0,0,'$public_r[fpath]');");
                                $repfval=$filepath."/".$tranfilename;
                                $filename.=$dh.$tranfilename;
                                $dh=",";
                        }
                        else
                        {
                                $repfval="";
                        }
                        $addval=str_replace("[!#@-".$tf."-@!]",$repfval,$addval);
                }
        }
        $ip=egetip();
        $sql=$empire->query("insert into {$dbtbpre}enewsfeedback(bid,saytime,ip,filepath,filename,userid,username".$addf.") values('$bid','$saytime','$ip','$filepath','$filename',$userid,'$username'".$addval.");");
        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_url=empty($_POST['feedback_url'])?$public_r[newsurl]:$_POST['feedback_url'];
                $reurl=DoingReturnUrl($feedback_url,$add['ecmsfrom']);
                printerror("AddFeedbackSuccess",$reurl,1);
        }
        else
        {printerror("DbError","history.go(-1)",1);}
}

/*----信息反馈内容----*/
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="<!--record-->";
    $field="<!--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">&nbsp;&nbsp;'.$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;
}


还要注意,邮件设置发送调的帝国自带的功能,要在后系统设置是设置才能正常发送。如果你能用帝国自带的找回密码邮件发送,这个就能用。设置请看下图


上传以下图片:


[该贴被修改 6 次,最后修改时间 2010-09-21 13:16:50 ]



2010-09-19 07:57:07 已设置保密 顶部 回复 引用 报告 编辑 删除

ibook
用户头衔:探花

精华贴   :0
发贴数   :2176
经验值   :6379
注册时间:2010-06-29
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

支持,谢谢楼主




2010-09-19 08:09:16 已设置保密 顶部 回复 引用 报告 编辑 删除

wangji309
用户头衔:秀才

精华贴   :0
发贴数   :75
经验值   :422
注册时间:2009-02-10
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]





2010-09-19 11:00:42 已设置保密 顶部 回复 引用 报告 编辑 删除

bebebe
用户头衔:探花

精华贴   :0
发贴数   :2692
经验值   :6789
注册时间:2010-03-01
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

支持




2010-09-19 11:18:28 已设置保密 顶部 回复 引用 报告 编辑 删除

cyu052
用户头衔:举人

精华贴   :0
发贴数   :158
经验值   :810
注册时间:2008-12-11
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

观望一下



精挑细选网,分享经典,一定有你喜欢的http://56a.me
2010-09-19 17:05:51 已设置保密 顶部 回复 引用 报告 编辑 删除

dirtx
用户头衔:进士

精华贴   :0
发贴数   :1023
经验值   :3239
注册时间:2007-06-17
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

支持




2010-09-20 08:37:41 已设置保密 顶部 回复 引用 报告 编辑 删除

缘梦人
用户头衔:书生

精华贴   :0
发贴数   :74
经验值   :220
注册时间:2008-01-15
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

支持分享




2010-09-20 13:12:50 已设置保密 顶部 回复 引用 报告 编辑 删除

包青天
用户头衔:书生

精华贴   :0
发贴数   :44
经验值   :138
注册时间:2008-05-07
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

支持一下




2010-09-20 14:15:09 已设置保密 顶部 回复 引用 报告 编辑 删除

sheep0107
用户头衔:书生

精华贴   :0
发贴数   :52
经验值   :165
注册时间:2010-07-27
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

路过  顶一下



开心就好!----------好学学吧 http://www.hxx8.com
2010-09-21 10:13:42 已设置保密 顶部 回复 引用 报告 编辑 删除

fzs
用户头衔:探花

精华贴   :0
发贴数   :2345
经验值   :7070
注册时间:2008-06-25
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 10 楼]

支持。



不好意思说!
2010-09-21 11:51:50 已设置保密 顶部 回复 引用 报告 编辑 删除
 1/9     1 2 3 4 5 6 7 8 9 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1