微信小程序实现评论功能


Posted in Javascript onNovember 28, 2018

本文实例为大家分享了微信小程序实现评论功能的具体代码,供大家参考,具体内容如下

前端

<textarea class='the_prw_in' bindinput='bindblur' cursor-spacing="130" placeholder='说点什么吧...' maxlength="76">
 </textarea>
<view class='the_prw_btn' bindtap='btn_send'>
 留言
</view>
 
<view>评论内容:</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: 默认展示历史评论,评论后也刷新页面,连带此次评论内容一起展示。

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;
 // 查询评论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: '网络不好哟',
  image: '/image/wrong.png',
  duration: 3000
 })
 }
 })
},
 btn_send: function () {
 var that = this
 //添加评论
 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: '网络不好哟',
  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');// 响应类型 
 header('Access-Control-Allow-Headers:*'); // 响应头设置 
 $link=mysql_connect("localhost","root","root"); 
 mysql_select_db("weiqing", $link); //选择数据库
 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;
 //插入数据到数据库 
 $strsql = "insert into pinglun (act_id,user_id,input_value) values('$act_id','$user_id','$input_value')";
 //mysql_query() 函数执行一条 MySQL 查询。SELECT,SHOW,EXPLAIN 或 DESCRIBE 都需要用这个函数执行
 $result = @mysql_query($strsql);
 
 }
 
 $q = "SELECT * FROM pinglun"; //SQL查询语句 SELECT * FROM 表名
 $rs = mysql_query($q); //获取数据集
 if(!$rs){die("数据库没有数据!");}
 
 //循环读取数据并存入数组对象
 $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返回报错就找到php-ini 配置文件 ,把

display_errors = On
改为
display_errors = Off

禁止php报错

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 扩展对input的一些操作方法
Oct 30 Javascript
js和jquery中循环的退出和继续学习记录
Sep 06 Javascript
深入理解JavaScript系列(43):设计模式之状态模式详解
Mar 04 Javascript
浅谈JS使用[ ]来访问对象属性
Sep 21 Javascript
基于jQuery实现数字滚动效果
Jan 16 Javascript
JS继承与闭包及JS实现继承的三种方式
Oct 15 Javascript
vue-cli3 从搭建到优化的详细步骤
Jan 20 Javascript
vue.js的vue-cli脚手架中使用百度地图API的实例
Jan 21 Javascript
vue.js实现数据库的JSON数据输出渲染到html页面功能示例
Aug 03 Javascript
layui表格设计以及数据初始化详解
Oct 26 Javascript
Vue前端判断数据对象是否为空的实例
Sep 02 Javascript
JS前端canvas交互实现拖拽旋转及缩放示例
Aug 05 Javascript
在 Angular-cli 中使用 simple-mock 实现前端开发 API Mock 接口数据模拟功能的方法
Nov 28 #Javascript
小程序点击图片实现自动播放视频
May 29 #Javascript
django使用channels2.x实现实时通讯
Nov 28 #Javascript
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
Nov 28 #Javascript
详解Vue中watch的详细用法
Nov 28 #Javascript
vscode下的vue文件格式化问题
Nov 28 #Javascript
微信小程序如何获取用户收货地址
Nov 27 #Javascript
You might like
php自动注册登录验证机制实现代码
2011/12/20 PHP
小谈php正则提取图片地址
2014/03/27 PHP
PHP开启opcache提升代码性能
2015/04/26 PHP
php根据生日计算年龄的方法
2015/07/13 PHP
PHP实现的猴王算法(猴子选大王)示例
2018/04/30 PHP
Javascript之文件操作
2007/03/07 Javascript
javaScript 关闭浏览器 (不弹出提示框)
2010/01/31 Javascript
js汉字转拼音实现代码
2013/02/06 Javascript
alert中断settimeout计时功能
2013/07/26 Javascript
jquery html动态生成select标签出问题的解决方法
2013/11/20 Javascript
ECMAScript5(ES5)中bind方法使用小结
2015/05/07 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
JS使用post提交的两种方式
2015/12/03 Javascript
js 创建对象 经典模式全面了解
2016/08/16 Javascript
ionic实现底部分享功能
2017/05/11 Javascript
解决在vue项目中,发版之后,背景图片报错,路径不对的问题
2018/03/06 Javascript
JavaScript的Object.defineProperty详解
2018/07/09 Javascript
微信小程序动态显示项目倒计时
2019/06/20 Javascript
详解Python中heapq模块的用法
2016/06/28 Python
使用Python读写及压缩和解压缩文件的示例
2016/07/08 Python
Python编程实现粒子群算法(PSO)详解
2017/11/13 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
实例讲解Python中浮点型的基本内容
2019/02/11 Python
python requests更换代理适用于IP频率限制的方法
2019/08/21 Python
python求平均数、方差、中位数的例子
2019/08/22 Python
Python之字典添加元素的几种方法
2020/09/30 Python
div或img图片高度随宽度自适应的方法
2020/02/06 HTML / CSS
什么是数据库锁?Oracle中都有哪些类型的锁?
2015/08/21 面试题
介绍一下SQL中union,intersect和minus
2012/04/05 面试题
爱心捐款倡议书
2014/04/14 职场文书
信息工作经验交流材料
2014/05/28 职场文书
四风问题对照检查整改措施思想报告
2014/10/05 职场文书
兴趣班停课通知
2015/04/24 职场文书
初中班长竞选稿
2015/11/20 职场文书
读《茶花女》有感:山茶花的盛开与凋零
2020/01/17 职场文书
mysql性能优化以及配置连接参数设置
2022/05/06 MySQL