用php+mysql+ajax实现淘宝客服或阿里旺旺聊天功能 之 前台页面
首先来看一下我已经实现的效果图:
消费者页面:(本篇随笔)
(1)会显示店主的头像
(2)当前用户发送信息显示在右侧,接受的信息,显示在左侧
店主或客服页面:(下一篇随笔)
(1)在左侧有一个列表 ,会显示所有与店主对话的顾客;该列表可以移动;有新消息时会提示;也可以清空该聊天记录
(2)点击列表里的顾客进入右边的对话框界面,显示与该顾客的聊天信息
在实现功能之前,来说一下我用到的两张表:
解释一下:bkid在此处没有用到;isok列是用来判断消息是否已读,未读为0;
现在,来说一下步骤:(分前台和后台两部分)
在这篇随笔中我们首先来说一下前台页面是如何实现的:(李四登录)
用session存取一下lisi;便于后面从user表中取数据
1、布局页面代码以及读取数据代码:
<!--中间内容--><div id="zhongjian"><div id="kuangjia" style="height: 550px;width: 620px; margin: 0px auto;border: 1px solid gainsboro;background-color: white;"><div id="neirong" style="height: 400px;width: 600px;"><div style="height: 100px;width: 620px;background-image: url(../img/bj4.jpg);">//取店主用户名,显示店主的头像和姓名 <?php$uid = $_SESSION["uid"]; $sql = "select * from users where uid='zhangsan'";$arr = $db->query($sql);foreach($arr as $v){ echo "<div style='height:100px;float:left;width:100px;float:left;'><div style='border:2px solid grey;height:84px;width:84px;margin:7px auto; border-radius:10px;overflow:hidden'><img src='{$v[6]}' height='80px' width='80px'/></div></div><div style='height:100px;width:500px;float:left;'><div style='height:50px;width:500px;text-align:left;line-height:50px'>亲爱的店主</div> <div style='height:50px;width:500px;text-align:left;'>个性签名:<input type='text' placeholder='不读书怎么对得起今天!' style='width:280px'> </div></div>"; } ?></div><div style="height: 300px;width: 620px;overflow: auto;overflow-x:hidden ;"> //获取session里存取的uid;<?php$uid = $_SESSION["uid"]; $sql3 = "select * from users where uid='{$uid}'";$arr3 = $db->query($sql3); //从对话表里读取店主张三和李四所有的对话信息,并按对话时间顺序排序 $sql2="select * from duihua where uid='{$uid}' or jsid='{$uid}' order by dhtime"; $arr2= $db->query($sql2);foreach($arr2 as $n){ //如果是店主,则信息要显示在左侧if($n[2]=='zhangsan'){echo "<div style='height:100px;width:600px;'><div style='height:100px;width:250px;float:left'><div style='height:20px;width:250px;font-size:13px;padding-left:20px'>{$n[6]}</div><div style='height:80px;width:50px;float:left'><div style='height:50px;width:50px;margin:0px auto; border-radius:90px;overflow:hidden;'><img src='{$v[6]}' height='50px' width='50px'/></div></div><div style='min-height:40px;width:200px;float:left;background-color:cornflowerblue; border-bottom-right-radius: 10px;border-top-right-radius: 10px;border-top-left-radius: 40px;border-bottom-left-radius: 40px;'><p style='padding-left:20px; line-height:40px'>{$n[4]}</p> </div> </div></div>";} //如果是李四,则显示在右侧 if($n[2]==$uid){ echo "<div style='height:100px;width:600px;margin-right:20px'><div style='height:100px;width:250px; float:right'><div style='height:20px;width:250px;font-size:13px;padding-right:20px'>{$n[6]}</div><div style='height:80px;width:50px;float:right'><div style='height:50px;width:50px;margin:0px auto; border-radius:90px;overflow:hidden;'><img src='{$arr3[0][6]}' height='50px' width='50px'/></div></div><div style='min-height:40px;width:200px;float:right;background-color:pink; border-bottom-left-radius: 10px;border-top-left-radius: 10px;border-top-right-radius: 40px;border-bottom-right-radius: 40px;'><p style='padding-left:20px; line-height:40px'>{$n[4]}</p> </div> </div></div>"; } } ?> </div> </div> <!--id="neirong"--><form role="form"><div class="form-group"><textarea class="form-control" rows="3" id="words"></textarea> //输入发送内容</div></form><div id="fs" style="height: 50px; width: 600px;text-align: right; padding-right: 50px;"><button type="button" class="btn btn-success fasong">发送</button> //点击按钮发送</div></div> </div> <!--id=zhongjian-->
实现效果:
2、点击发送时的ajax代码:
<script>$(".tc").click(function(){$("#kuangjia").show(); })$(".fasong").click(function(){var nr=$("#words").val();$.ajax({url:"qt-speak-cl.php",data:{words:nr},type:"POST",dataType:"TEXT",success: function(data){if(data==1){window.location.href="qt-dh.php"; }else{alert("发送内容不能为空!");}}})}) $("#dh").click(function(){$.ajax({url:"qt-yidu-cl.php",dataType:"TEXT",success: function(data){
// alert(data); window.location.href="qt-dh.php"; } })})</script>
3、qt-speak-cl.php页面:
<?php
session_start();
require "DBDA.class.php";$db = new DBDA();
$uid = $_SESSION["uid"];$words =$_POST["words"];
$chtime=date("Y-m-d H:i:s",time());$jieshou = "zhangsan";
if(!empty($words))
{
$sql="insert into duihua values ('','{$jieshou}','{$uid}','','{$words}',0,'{$chtime}')";
echo $db->query($sql,0);
}
else
{ echo "发送内容不能为空!";
}
?>
如果发送内容为空,则会提示“发送内容不能为空!”
前台页面会随不同用户登录显示不同的信息;让王五登录看看:
未完待续,后台页面的实现看下一篇随笔中~~~
转载于:https://www.cnblogs.com/chenguanai/p/7018835.html
用php+mysql+ajax实现淘宝客服或阿里旺旺聊天功能 之 前台页面相关推荐
- 用php+mysql+ajax实现淘宝客服或阿里旺旺聊天功能 之 后台页面
在上一篇随笔中,我们已经看了如何实现前台的对话功能:前台我限定了店主只有一人,店铺只有一个,所有比较单一,但后台就不一样了,而后台更像是我们常见的聊天软件:当然,前台也应该实现这种效果,但原理懂了,可 ...
- python实现千牛客服自动回复语_淘宝客服自动回复语录(客服自动回复大全)
淘宝客服自动回复语录(客服自动回复大全) 2020-12-05 09:42:32 共7个回答 谁能帮我弄下淘宝的自动回复.就是第一次收到买家信息自动回复什么语句比较好.我离开时回复什么语句比较好 鼠标 ...
- 淘宝客服的逆袭之路:拼搏六个月,从6K到12K,我哭了......
个人基本介绍 我之前的行业是淘宝客服,薪资不高6000左右,没有五险一金的那种,不包吃,不包住,一个月下来去掉吃住,基本上不剩什么钱,考虑转行主要是看python行业薪资高. 我与python之缘 决 ...
- 淘宝客服的逆袭之路:拼搏6个月,从6K到12K,我哭了……
个人基本介绍 我之前的行业是淘宝客服,薪资不高6000左右,没有五险一金的那种,不包吃,不包住,一个月下来去掉吃住,基本上不剩什么钱,考虑转行主要是看python行业薪资高. 我与python之缘 决 ...
- 淘宝客服的逆袭之路:拼搏6个月,从6K到12K,我哭了......
个人基本介绍 我之前的行业是淘宝客服,薪资不高6000左右,没有五险一金的那种,不包吃,不包住,一个月下来去掉吃住,基本上不剩什么钱,考虑转行主要是看python行业薪资高. 我与python之缘 决 ...
- 淘宝客服如何判定骂人?骂人怎么投诉?
淘宝客服是淘宝店铺的重要工作人员之一,想要做好淘宝客服并不是容易的事情,医院每天都需要接待很多的客户,且每个客户的性格也是不一样的,那么淘宝客服骂人是怎么评判的呢? 如果淘宝客服有骂人的言论,那么基本 ...
- Python 模拟淘宝客服小蜜自动回复
首先,新建一个文本文件做准备: 订单|如果您有任何订单问题,可以登录淘宝账号,点击"我的订单",查看订单详情. 物流|如果您有任何订单问题,可以登录淘宝账号,点击"我的订 ...
- 淘宝客服快捷回复技巧
快捷回复对于淘宝客服来说非常重要,对于店铺的成交和转化率有着直接影响,淘宝客服要掌握一定的快捷回复技巧. 前言 快捷回复对于淘宝客服来说非常重要,对于店铺的成交和转化率有着直接影响.现在是快节奏时 ...
- 【淘宝客服的制胜法宝:投诉处理篇】
[淘宝客服的制胜法宝:投诉处理篇] 投诉处理中常见的几种问题: 1.虚假发货, 2.延迟发货, 3.违背承诺, 4.未收到货, 5.七天无理由退货. 投诉处理中常见的几种客户: 1.古怪的客户, 2. ...
最新文章
- 在Java中使用Protocol Buffers
- 深度学习之基于CNN实现天气识别
- linux内核中分配4M以上大内存的方法
- [20170410]快速找回触发器内容.txt
- python爬虫加强版!!!!想爬哪个队伍就爬那个
- Android最佳安全应用程序已出炉,Google Play Protect曝大冷门
- Scala 基础(7)—— 函数字面量和一等函数
- 总纲篇:产品结构设计指导VII(本博客指引章节)
- 2022年 27 个最佳 UX/UI 设计灵感网站
- 01 ,线性代数 :二阶行列式,三阶行列式,排列,阶乘,逆序,逆序数,奇排列,偶排列,对换 :
- 合并pdf文件-批量打印
- UX美即好用效应 Aesthetic Usability Effect
- Win32SDK基本 RC资源的使用
- Python装逼神器,Python实现一键批量扣图
- python输出用逗号隔开的数字_python,得出一些数字后,怎样不输出最后一个逗号...
- E001-CRC校验及软硬件实现
- Php Adodb 初探
- 软件测试bug不能重现,如何看待那些不能重现的bug
- Java代码审计怎么做?
- VB程序逆向反汇编常见的函数
热门文章
- 删除数据后无法恢复的固态盘
- k8s下使用local-path-provisioner进行本地存储
- S3C2440——使用URAT0查询方式发送和接收字符串
- 德国的StemmerImaging公司功能强大的机器视觉软件CVB
- 高德地图左上角或任意位置增加自定义按钮,一刷新按钮消失问题
- 搜狗输入法出现中文状态下英文解决办法
- [Shapefile C Library]读写shp图形(C++.net Wapper)
- python快速下载_Python:快速下载多个文件
- Vue项目中如何引入Toast插件
- iOS 高刷屏监控 + 优化:从理论到实践全面解析