sqlite+php+ajax 即时聊天系统(ajax 长连接)一

前端之家收集整理的这篇文章主要介绍了sqlite+php+ajax 即时聊天系统(ajax 长连接)一前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

转载自:http://www.jb51.cc/article/p-ndyouxzi-g.html

思路:sqlite:数据库数据,用来保存聊天记录;PHP链接数据库,接受ajax传送数据,返回处理结果;ajax异步获取聊天数据,异步更新聊天记录;

所用的数据库类,请参照前面blog。


一.登录

  1. <?PHPsession_start();?>
  2. <!DOCTYPEhtml>
  3. <htmllang="zh-cn">
  4. headMetacharset='utf-8'linkhref="http://cdn.bootcss.com/bootstrap/3.3.2/css/bootstrap.min.css"rel="stylesheet">
  5. <!--HTML5shimandRespond.jsforIE8supportofHTML5elementsandmediaqueries-->
  6. <!--[ifltIE9]scriptsrc="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></scriptscriptsrc="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js">
  7. <![endif]-->
  8. style>
  9. .main{
  10. width:500px;
  11. margin:50pxauto;
  12. }
  13. .info-list{
  14. border:1pxsolid#dedede;
  15. height:200px;
  16. overflow-y:scroll;
  17. }
  18. .info-listli{
  19. border:0px;
  20. }
  21. bodyonload="cycle();">
  22. varxmlhttp;
  23. vara;
  24. //生成xmlhttp对象
  25. functioncreate(){
  26. if(window.XMLHttpRequest)
  27. {
  28. xmlhttp=newXMLHttpRequest();
  29. }else{
  30. xmlhttp=newActiveXObject("Microsoft.XMLHTTP");
  31. }
  32. }
  33. //回调方法
  34. functioncallback(){
  35. if(xmlhttp.readyState==4&&xmlhttp.status==200)
  36. {
  37. document.getElementById("info_list").innerHTML=xmlhttp.responseText;//获取PHP获取到的聊天记录
  38. }
  39. }
  40. //启动
  41. functionrun(){
  42. create();
  43. xmlhttp.open("GET","/message/first.PHP",true);
  44. xmlhttp.onreadystatechange=callback;
  45. xmlhttp.send();
  46. }
  47. 每隔500毫秒,便更新一次表中数据。
  48. functioncycle(){
  49. setInterval("run()",500);
  50. }
  51. >
  52. divclass="main"divclass="panelpanel-default"divclass="panel-heading">登录divdivclass="panel-body"formmethod="POST"action=""divclass="form-group"labelfor="exampleInputEmail1">账号labelinputtype="text"name="username"class="form-control"id="exampleInputEmail1"placeholder="Enteremail"labelfor="exampleInputPassword1">密码inputtype="password"name="password"class="form-control"id="exampleInputPassword1"placeholder="Password"inputtype="submit"name="submit"class="btnbtn-default"value="登录"atype="button"class="btnbtn-default"href="/message/register.PHP">注册aform>
  53. PHP
  54. if($_POST['submit']){//登录,并且获取session
  55. include'../sqlite/sqlite_db.PHP';
  56. $db=newsqliteDb();
  57. $res=$db->query('user','whereusername="'.$_POST['username'].'"andpassword="'.$_POST['password'].'"');
  58. if($res){
  59. foreach($resas$key=>$row){
  60. $_SESSION['user']['username']=$row['username'];
  61. $_SESSION['user']['nickname']=$row['nickname'];
  62. }
  63. echo'>window.location.href="/message/";>';
  64. }
  65. }
  66. ?>
  • scriptsrc="my.js"scriptsrc="http://cdn.bootcss.com/jquery/1.11.2/jquery.min.js"scriptsrc="http://cdn.bootcss.com/bootstrap/3.3.2/js/bootstrap.min.js"bodyhtml>
    原文链接:https://www.f2er.com/sqlite/199868.html

    猜你在找的Sqlite相关文章