您的位置:首页 > Web前端 > JQuery

回复 盖楼 聊天系统[php+mysql+Jquery]

2009-11-27 09:14 447 查看
 index.html

 

 

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="utf-8" />
<title>Message</title>
<script src="jquery-1.3.2.min.js" language="javascript" type="text/javascript" ></script>
<script language="javascript" type="text/javascript" >
 function submitMessage()
 {
  var message=$("textarea[name='message']").html();
  if(message!="")
  {
   $.post("message.php",{message:message},ajax_message);
  }
  else
  {
   alert("请输入内容!");
  }
 }
 function ajax_message(info)
 {
  if(info!="")
  {
   var messageArray=eval(info);
   var id=0;
   var content=""; 
   var str=""; 
   for(var i=0;i<messageArray.length;i++)
   {
    var id=messageArray[i]['id'];
    var content=messageArray[i]['content'];
    var restoreMessageArray=messageArray[i]['restoreMessage'];
    str +='<div  style="border:solid 2px red;margin-left:5px;margin-right:5px; margin-bottom:5px">';
     str +='<span style="width:97%;">'+content+'</span>';
     str +='<span style="margin-right:1px;" onclick="displayRestoreMessage('+id+');"><a href="#">回复</a></span>';
      
      
      str +='<div style="display:none;" id="displayRestoreMessage'+id+'">';
      str +='<input type="text" id="restoreMessage'+id+'">';
      str +='<input type="button" value="确定" onClick="restoreMessage('+id+');">';
      str +='</div>';
      
     for(var j=0;j<restoreMessageArray.length;j++)
     {
      str +='<div  style="border:solid 2px blue;margin-left:5px;margin-right:5px; margin-bottom:5px">';
        str +='<p>'+restoreMessageArray[j]["restoreMessage"+j]+'</p>';
     }      
      
     for(var j=0;j<restoreMessageArray.length;j++)
     {
      str +='</div>';
     }      
      
      
    str +='</div>';

   }
   $("#chatContent").html(str);
  }
 }
 
 function firstReadResult()
 {
  $.post("message.php",ajax_message);
 }
 
 function displayRestoreMessage(id)
 {
  if($("#displayRestoreMessage"+id).css("display")=="none")
  {
   $("#displayRestoreMessage"+id).show();
  }
  else
  {
   $("#displayRestoreMessage"+id).hide();
  }
 }
 function restoreMessage(id)
 {
  var restoreContent=$("#restoreMessage"+id).val();
  if(restoreContent!="")
  {
   $.post("message.php",{message:restoreContent,id:id},ajax_message);
  }
  else
  {
   alert("请输入内容!");
  }
 }
 
 
</script>
</head>

<body onload="firstReadResult();">
  
  
  <div id="chatContent"></div>
  <textarea name="message" cols="100" rows="5"></textarea>
  <br>
  <input type="submit" value="输入内容" onclick="submitMessage();">

</body>
</html>

 

 

message.php

 

 

<?php

 //数据库配置
 $host="localhost";
 $userName="root";
 $password="root";
 
 $dbName="message";

 $message=$_POST['message'];
 $id=$_POST['id'];
 $message=trim($message);
 $connect =mysql_pconnect($host,$userName,$password);
 $result=mysql_list_dbs($connect);
 $isExist=false;
 //判断是否存在message数据库
 while ($rowArray=mysql_fetch_array($result))
 {
  if($rowArray[0]==$dbName)
  {
   $isExist=true;
   break;
  }
 }
 //如果不存在,创建
 if($isExist===false)
 {
  $result=mysql_query("create database ".$dbName,$connect);
 }

 mysql_select_db($dbName,$connect);
 $result=mysql_query("set names 'utf8'");
 $result=mysql_query("create table if not exist message(id int(5) not null auto_increment primary key,content varchar(255) not null,rId int(5) not null default 0)",$connect);
 
 if(!empty($message))
 {
  if(empty($id))
  {
   $result=mysql_query("insert into message(content) values('".$message."')");
  }
  else
  {
   $result=mysql_query("insert into message(content,rId) values('".$message."',".$id.")");
  }
   
 }
 $result=mysql_query("select * from message where rId=0",$connect);

 $str="";
 while ($rowArray=mysql_fetch_array($result))
 {
  $id=$rowArray[0];
  
  $result1=mysql_query("select * from message where rId=".$id,$connect);
  $restoreStr="";
  $i=0;
  while ($rowArray1=mysql_fetch_array($result1))
  {
   $restoreStr .="{'restoreMessage".$i."':'".$rowArray1[1]."'},";
   $i++;
  }
  
  if(!empty($restoreStr))
  {
   if(substr($restoreStr,strlen($restoreStr)-1,1)==",")
   {
    $restoreStr="[".substr($restoreStr,0,strlen($restoreStr)-1)."]";
   }
  }
  else
  {
   $restoreStr="[]";
  }
  $str .="{'id':".$rowArray[0].",'content':'".$rowArray[1]."','restoreMessage':".$restoreStr."},";
  
  
 }
 if(!empty($str))
 {
  if(substr($str,strlen($str)-1,1)==",")
  {
   $str="[".substr($str,0,strlen($str)-1)."]";
  }
 }
 echo $str; 
 
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息