在开发旅游预订功能的过程中,我们通过反馈表单实现了许多关键功能。由于这一过程涉及对多个源文件和数据库结构的修改,因此在使用时,请根据实际需求进行选择性调整。以下内容将详细介绍如何实现这些功能,并提供相关代码示例。
第一步:添加字段
为了实现订单号和客服回复的功能,需要对数据库进行如下修改:
在表 phome_enewsfeedback 中新增两个字段:
ddno varchar(30) - 订单号
retext varchar(120) - 客服回复
如果您希望避免直接修改数据库结构,可以在后台管理信息反馈字段中添加这些字段,并将 ddno 的初始值设置为:
=$ddno?>
接下来,在后台表单模板中手动插入以下代码(请勿使用自动生成功能):
=$ddno?>
第二步:修改源代码
打开文件 /e/tool/feedback/index.php,找到合适的位置,添加以下代码以生成反馈编号:
$ddno=time();// 反馈编号
随后,修改文件 /e/admin/tool/showfeedback.php,增加用于处理订单和回复的功能。具体操作是在页面中添加一个表单,包含几个文本框。以下是参考代码:
接着,修改文件 /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 函数:
// 回复反馈 2010-10-16 by 成名
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"";
exit();
}
else
{printerror("DbError","history.go(-1)");}
}
第三步:增加搜索功能
为了提升用户体验,您可以在反馈表单中添加搜索功能。仅需修改文件 /e/admin/tool/feedback.php 即可。具体修改方法可以参考文件 /e/admin/shopsys/listdb.php。
以上步骤详细介绍了如何实现反馈表单中的订单管理和回复功能。希望对您的项目有所帮助!如果遇到任何问题,欢迎随时反馈。