phpcms v9 的表单向导功能的使用方法
表單向導做的很實用,生成一個表單,常用的是把它作為一個留言板,或者在招聘欄目作為一個供網友填寫個人信息的應聘表。
對于表單,默認的模板放在./phpcms/templates/default/formguide/。文件夾里面有三個文件index.html前臺的表單列表,show.html單個表單展示,show_js.html表單插件;
表單作為一個功能性模塊,往往是作為一個插件嵌入到頁面當中,而不是單獨做成一個模型,所以用到的模板就是show_js.html模板頁。
1.第一步,利用表單向導新建一個表單
?
2.每個表單都對應一個調用的js代碼,如上圖 調用 項下面的輸入框所示
<script language='javascript' src='{APP_PATH}index.php?m=formguide&c=index&a=show&formid=12&action=js&siteid=1'></script>
3.在其他模板頁面里面加入 調用代碼 就ok了。
案例一,phpcms v9的表單向導實現問答咨詢功能的方法
phpcms v9內容管理系統本身是沒有問答模塊的,只有表單向導,但表單向導有很大的局限性,通過表單向導,我們只能查看用戶提交的信息,不能對用戶提交的信息進行回復。例如一些機構的網站需要一個接收用戶的提問,并對提問進行回復的功能,僅僅利用表單向導是滿足不了這種需求的,但通過下面的方法對表單向導模塊進行一些改動就可以實現咨詢問答功能了。在phpcms v9后臺新建一表單向導“在線問答”,表名為“online_ask”,表名自己定,如下圖。
對“在線問答”添加字段,如下圖的例子,添加什么字段是根據需求定的。
下圖是該表單的預覽效果。
這樣用戶就可以通過該表單提交問題了,但在后臺,網站編輯只能通過表單向導模塊對問題進行查看,不能對其進行回答并將問題和回答展示在網站前臺,如下圖。
為了實現網站編輯在查看問題的同時還能對問題進行回答,需要對表單模塊做如下的改動:
打開文件phpcms/modules/formguide/templates/formguide_info_view.tpl.php ,在第28行下面添加如下內容:
<tr>
<td>回 答:</td>
<td>
<textarea id="answer" cols="80" rows="10">
<?php echo $answer; ?>
</textarea>
</td>
</tr>
<tr>?
<td> </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;
}
上面的變量$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用來存儲回答。
以上是所有的改動。
這樣我們查看用戶提交的問題的時候界面就變成下圖這個樣子了。
填入回答后點擊提交,就可以將答案數據存儲在該表單的數據表內了,
在網站前臺,我們可以將用戶的問題和網站編輯的回答展示出來,如下圖:
這樣我們就利用表單向導模塊實現了一個簡單的在線咨詢的功能。網站www.ytsfc.com的在線咨詢功能就是通過上面的方法實現的,大家可以去看具體效果。
轉載于:https://www.cnblogs.com/quietxin/p/9078183.html
總結
以上是生活随笔為你收集整理的phpcms v9 的表单向导功能的使用方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Vue中src属性绑定的问题
- 下一篇: linkedHashMap源码解析(JD