微信小程序?qū)崿F(xiàn)評(píng)論功能
本文實(shí)例為大家分享了微信小程序?qū)崿F(xiàn)評(píng)論功能的具體代碼,供大家參考,具體內(nèi)容如下
前端
<textarea class='the_prw_in' bindinput='bindblur' cursor-spacing="130" placeholder='說點(diǎn)什么吧...' maxlength="76"> </textarea> <view class='the_prw_btn' bindtap='btn_send'> 留言 </view> <view>評(píng)論內(nèi)容:</view> <block wx:for="{{pl_list}}" wx:key="index"> <view class='the_msg' wx:if='{{item.input_value!=null}}'> <!-- <view class='msg_left'> <view class='msg_avatar_v'> <image class='msg_avatar' src='{{msg_data.avatar}}'></image> </view> </view> --> <view class='msg_right'> <!-- <view class='msg_right_name'> {{msg_data.nicename}} </view> --> <view class='msg_right_text'> <text>{{item.input_value}}</text> </view> <view class='gap'> </view> </view> </view> </block>
js: 默認(rèn)展示歷史評(píng)論,評(píng)論后也刷新頁面,連帶此次評(píng)論內(nèi)容一起展示。
var bindblur ; Page({ bindblur:function(e){ console.log('1111111:', e.detail.value) bindblur = e.detail.value; }, onLoad: function (a) { var that = this; actid = a.id; // 查詢?cè)u(píng)論fetch wx.request({ url: 'https://m.yishushe.net/addons/up_text.php', method: 'POST', header: { 'content-Type': 'application/x-www-form-urlencoded', 'Accept': 'application/json' }, data: { act_id: actid }, success: function (result) { that.setData({ pl_list: result.data.reverse(), }) }, fail: res => { wx.showToast({ title: '網(wǎng)絡(luò)不好喲', image: '/image/wrong.png', duration: 3000 }) } }) }, btn_send: function () { var that = this //添加評(píng)論 console.log('文章id:act_id :', actid); console.log('用戶緩存id:user_id :', user_id); console.log('文本輸入框: input_value :', bindblur); wx.request({ url: 'https://m.yishushe.net/addons/up_text.php', method: 'POST', header: { 'content-Type': 'application/x-www-form-urlencoded', 'Accept': 'application/json' }, data: { act_id: actid, user_id: user_id, input_value: bindblur }, success: function (result) { that.setData({ pl_list: result.data.reverse(), input_value: "", }) }, fail: res => { wx.showToast({ title: '網(wǎng)絡(luò)不好喲', image: '/image/wrong.png', duration: 3000 }) } }) } })
后端php 源碼:
<?php header("Content-Type:text/html;charset=utf8"); header("Access-Control-Allow-Origin: *"); //解決跨域 header('Access-Control-Allow-Methods:POST');// 響應(yīng)類型 header('Access-Control-Allow-Headers:*'); // 響應(yīng)頭設(shè)置 $link=mysql_connect("localhost","root","root"); mysql_select_db("weiqing", $link); //選擇數(shù)據(jù)庫 mysql_query("SET NAMES utf8");//解決中文亂碼問題 //$username = $_POST['username']; //$avatarUrl = $_POST['avatarUrl']; $act_id = $_POST['act_id']; if($_POST['input_value']){ $user_id = $_POST['user_id']; $input_value = $_POST['input_value']; //echo $avatarUrl."----time:". $time."----iv:".$iv."----inputValue:". $inputValue; //插入數(shù)據(jù)到數(shù)據(jù)庫 $strsql = "insert into pinglun (act_id,user_id,input_value) values('$act_id','$user_id','$input_value')"; //mysql_query() 函數(shù)執(zhí)行一條 MySQL 查詢。SELECT,SHOW,EXPLAIN 或 DESCRIBE 都需要用這個(gè)函數(shù)執(zhí)行 $result = @mysql_query($strsql); } $q = "SELECT * FROM pinglun"; //SQL查詢語句 SELECT * FROM 表名 $rs = mysql_query($q); //獲取數(shù)據(jù)集 if(!$rs){die("數(shù)據(jù)庫沒有數(shù)據(jù)!");} //循環(huán)讀取數(shù)據(jù)并存入數(shù)組對(duì)象 $dlogs;$i=0; while($row=mysql_fetch_array($rs)) { if($act_id ==$row["act_id"]){ $dlog["act_id"]=$row["act_id"]; $dlog["user_id"]=$row["user_id"]; $dlog["input_value"]=$row["input_value"]; } //$dlog["avatarUrl"]=$row["avatarUrl"]; //$dlog["username"]=$row["username"]; $dlogs[$i++]=$dlog; } //以json格式返回html頁面 echo urldecode(json_encode($dlogs)); ?>
如果php返回報(bào)錯(cuò)就找到php-ini 配置文件 ,把
display_errors = On
改為
display_errors = Off
禁止php報(bào)錯(cuò)
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
使用bootstrap3開發(fā)響應(yīng)式網(wǎng)站
這篇文章主要為大家詳細(xì)介紹了使用bootstrap3開發(fā)響應(yīng)式網(wǎng)站的具體代碼,感興趣的小伙伴們可以參考一下2016-05-05ES6新語法Object.freeze和Object.seal基本使用
這篇文章主要為大家介紹了ES6新語法Object.freeze和Object.seal基本使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01關(guān)于Javascript作用域鏈的八點(diǎn)總結(jié)
其實(shí)吧,關(guān)于作用域鏈相關(guān)的文章我也看了不少,但是我一直也沒能做一個(gè)詳細(xì)的總結(jié),今天把我看到的一些東西,結(jié)合自己的想法,總結(jié)成以下8個(gè)點(diǎn)2013-12-12javascript文件加載管理簡單實(shí)現(xiàn)方法
這篇文章主要介紹了javascript文件加載管理簡單實(shí)現(xiàn)方法,可實(shí)現(xiàn)順序加載所有js文件的功能,非常簡單實(shí)用,需要的朋友可以參考下2015-07-07關(guān)于javascript原型的修改與重寫(覆蓋)差別詳解
下面小編就為大家?guī)硪黄P(guān)于javascript原型的修改與重寫(覆蓋)差別詳解。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-08-08