利用phpcms v9的表单向导实现问答咨询功能

转载 2012年03月31日 15:02:29

phpcms v9内容管理系统本身是没有问答模块的,只有表单向导,但表单向导有很大的局限性,通过表单向导,我们只能查看用户提交的信息,不能对用户提交的信息进行回复。例如一些机构的网站需要一个接收用户的提问,并对提问进行回复的功能,仅仅利用表单向导是满足不了这种需求的,但通过下面的方法对表单向导模块进行一些改动就可以实现咨询问答功能了。

在phpcms v9后台新建一表单向导“在线问答”,表名为“online_ask”,表名自己定,如下图。
\

对“在线问答”添加字段,如下图的例子,添加什么字段是根据需求定的。
\

下图是该表单的预览效果。
\

这样用户就可以通过该表单提交问题了,但在后台,网站编辑只能通过表单向导模块对问题进行查看,不能对其进行回答并将问题和回答展示在网站前台,如下图。
\

为了实现网站编辑在查看问题的同时还能对问题进行回答,需要对表单模块做如下的改动:
打开文件phpcms/modules/formguide/templates/formguide_info_view.tpl.php ,在第28行下面添加如下内容:
<tr>
<td>回&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;答:</td>
<td>
<textarea id="answer" cols="80" rows="10">
<?php echo $answer; ?>
</textarea>
</td>
</tr>
<tr> 
<td>&nbsp;</td>
<td><input id="tijiaohuida" type="button" value="提交回答" /></td>
</tr>
上面的变量$answer哪来的继续往下看就知道了
在第30行下面添加如下内容:
<script type="text/javascript">
$(document).ready(function(){
var canshuStr=window.location.search;
var pos=canshuStr.indexOf("&did");
var posend=canshuStr.indexOf("&",pos+4);
var did_c=canshuStr.substring(pos+5,posend);
var answer_c="";
$("#tijiaohuida").click(function(){ 
answer_c= $("#answer").val(); 
$.post('index.php?m=formguide&c=formguide_info&a=public_answer', {
did: did_c,
answer: answer_c
}, function(json) {
if(json==1){
alert("回答成功");
}
}); 
}); 
});
</script>
然后打开文件phpcms/modules/formguide/formguide_info.php ,在56行加如下代码:
$answer=$info['answer'];
在最后添加一个方法,代码如下。
public function public_answer() {
$did = $_POST['did'];
$answer = $_POST['answer'];
$re= $this->db->query("update kc_form_online_ask set answer='".$answer."',mark='已回答' where dataid=".$did);
echo $re;
}
然后我们在数据库找到存储改表单的数据表,并添加两个字段mark和answer,mark用来标记改问题是否已作答,answer用来存储回答。
以上是所有的改动。
这样我们查看用户提交的问题的时候界面就变成下图这个样子了。
\

填入回答后点击提交,就可以将答案数据存储在该表单的数据表内了,
在网站前台,我们可以将用户的问题和网站编辑的回答展示出来,如下图:
\

这样我们就利用表单向导模块实现了一个简单的在线咨询的功能

相关文章推荐

phpcms v9的表单向导实现问答咨询功能的方法

本文主要介绍了在phpcms v9的表单向导里实现问答咨询功能的方法 phpcms v9内容管理系统本身是没有问答模块的,只有表单向导,但表单向导有很大的局限性,通过表单向导,我们只...

【phpcms-v9】使用后台的表单向导做前台的留言板功能

表单向导的适用场合:         如果一个前台页面只是为了提交表单数据,那么就非常适合适用表单向导的功能,如下面留言板的案例;如果一个前台页面不只是为了提交表单,还要求在当前前台页面显示提交表单...

phpcms v9 的表单向导功能的使用方法 附多个案例

表单向导做的很实用,生成一个表单,常用的是把它作为一个留言板,或者在招聘栏目作为一个供网友填写个人信息的应聘表。 对于表单,默认的模板放在./phpcms/templates/default/for...
  • luyaran
  • luyaran
  • 2016年11月28日 10:48
  • 1891

phpcms v9表单向导中怎么加入验证码

phpcms v9表单向导中怎么加入验证码表单想到比较简单,所以没有加入验证码的功能。网上的类似教程又大多数不准确。所以亲自测试了一下,发现下面的方法是可用的。希望对有需求的朋友们有所帮助。1.首先是...

【phpcms-v9】content_form.calss.php文件分析-内容添加页面动态表单的生成原理

PHPCMS V9 自定义列表分页功能实现方法

在用PHPCMS V9的过程中,可能一般人都不会在意分页功能,因为调用他实在是很简单,需要修改的估计也就是分页功能的样式了,拿系统自带的模板来看{$pages}我们可以修改class来自定义样式,当然...

phpcms自定义表单向导

phpcms自带的表单向导样式太固定了,不够灵活,有的时候需要使用自己的表单样式; 新建表单向导模块后,添加一些需要的字段,然后点击访问前台: 在打开的页面,右键“审查元素”,获取到表单信息,...
  • luyaran
  • luyaran
  • 2016年11月28日 10:52
  • 1852

PHPCMS_v9_使用指南及二次开发向导

  • 2011年03月11日 09:52
  • 1.42MB
  • 下载

phpcms表单向导更改前台代码使其能修改表单样式

phpcms表单向导的使用 ,相信大家都会用,很简单只需要添加字段就可以了,但是通过表单向导添加的表单样式很难看,而且在看代码的时候,会发现这个表单是循环输出的表单,样式上没有办法做修改。废话不多说了...

phpcmsv9表单向导index文件注释

内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用phpcms v9的表单向导实现问答咨询功能
举报原因:
原因补充:

(最多只允许输入30个字)