帝国CMS教程

帝国cms的信息反馈增加反馈编号加回复功能

2010-10-18

最近在用反馈表单在做旅游预订的功能,已基本上实现。因为其中涉及改动不少源文件及数据库结构,所以大家在使用过程请自行根据需要选择。
因为我做的功能比较复杂,不适合大众的需求,所以我只挑出了一部分比较实用的功能,中间如果有什么错误,欢迎在此帖反馈。我也是个菜鸟,能帮多少帮多少。

第一步 添加字段

phome_enewsfeedback

增加

ddno varchar(30) 订单号
retext varchar(120) 客服回复


如果你不想改动数据库结构,方便以后升级,建议直接在后台管理信息反馈字段里添加,ddno 的初始值设为:<?=$ddno?>
后台表单模板里手工加入以下代码,不要使用自动生成,否则用户可以自己修改订单号了:

<?=$ddno?>
<input name="ddno" type="hidden" id="ddno" value="<?=$ddno?>">


上传以下图片:

第二步 修改源代码

/e/tool/feedback/index.php

找个位置,添加反馈编号生成的代码

$ddno=time();//反馈编号

修改/e/admin/tool/showfeedback.php 增加回馈回复,处理订单功能
这个页面主要就是增加一个FORM,几个文本框,大家可以对照自己的代码添加上去,form input这些都是我加上去的

<form name="form1" method="post" action="feedback.php">
<input name="enews" type="hidden" id="enews" value="ReOrder">
<input name="bid" type="hidden" id="id" value="<?=$bid?>">
<input name="id" type="hidden" id="id" value="<?=$id?>">
<table  border="0" align="center" cellpadding="3" cellspacing="1" class=tableborder>
  <tr class=header>
    <td  colspan="2">所属分类:<?=$br[bname]?></td>
  </tr>
  <tr bgcolor="#FFFFFF">
    <td width="19%" height="25">提交者:</td>
    <td width="81%" height="25">
      <?=$username?>
    </td>
  </tr>
  <tr bgcolor="#FFFFFF">
    <td height="25">发布时间:</td>
    <td height="25">
      <?=$r[saytime]?>
    </td>
  </tr>
  <tr bgcolor="#FFFFFF">
    <td height="25">IP地址:</td>
    <td height="25">
      <?=$r[ip]?>
    </td>
  </tr>
  <?=$feedbackinfo?>
  <tr class=header>
    <td height="25" colspan="2">订单处理</td>
    </tr>
  <tr bgcolor="#FFFFFF">
    <td height="25">客服回复:</td>
    <td height="25">
      <textarea name="retext" cols="60" rows="9" id="retext"><?=$r[retext]?></textarea>
      </td>
  </tr>
  <tr bgcolor="#FFFFFF">
    <td height="25">&nbsp;</td>
    <td height="25">
      <input type="submit" name="Submit" value="提交">
        <input type="reset" name="Submit2" value="重置">
    </td>
  </tr>
  <tr bgcolor="#FFFFFF">
    <td height="25" colspan="2"><div align="center">[ <a href="javascript:window.close();">关
        闭</a> ]</div></td>
  </tr>
</table>
</form>


修改/e/admin/tool/feedback 获取表单的值
找到

include "../".LoadLang("pub/fun.php");


在上面添加

elseif($enews=="ReOrder")
{
        $id=$_POST['id'];
        $bid=$_POST['bid'];
        $retext=$_POST['retext'];
        ReOrder($id,$bid,$retext,$logininid,$loginin);
}


修改/e/class/com_functions.php 增加ReOrder函数

function ReOrder($id,$bid,$retext,$userid,$username){
        global $empire,$dbtbpre;
        $id=(int)$id;
        $bid=(int)$bid;
        if(!$id||!$retext)
        {
                printerror("EmptyReGbooktext","history.go(-1)");
    }
        //验证权限
        //CheckLevel($userid,$username,$classid,"feedback");
        $sql=$empire->query("update {$dbtbpre}enewsfeedback set retext='$retext' where id='$id';");
        if($sql)
        {
                //操作日志
                insert_dolog("id=".$id);
                echo"<script>opener.parent.main.location.href='feedback.php?bid=$bid';window.close();</script>";
                exit();
        }
        else
        {printerror("DbError","history.go(-1)");}
}


上传以下图片:

第三步,为你的反馈增加搜索功能,当然前台你也可以加上这个功能,方便用户查找

修改一个文件就可以了/e/admin/tool/feedback.php
具体怎么修改大家参考:/e/admin/shopsys/listdb.php,


上传以下图片:

电话 短信 电脑 客服