Skrypt Czatu:
<?php $_SESSION['chatuser'] = 'ID'; $_SESSION['chatuser_name'] = 'LOGIN'; //; Must be already set ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/loose.dtd" > <html> <head> <title>Live Demo | Simulating gmail, facebook type simple chat application using css, jQuery and PHP free @ blog.afriend.in with space and special character support</title> <style> body { background-color: #eeeeee; padding:0; margin:0 auto; font-family:"Lucida Grande",Verdana,Arial,"Bitstream Vera Sans",sans-serif; font-size:11px; } </style> <link type="text/css" rel="stylesheet" media="all" href="css/chat.css" /> <link type="text/css" rel="stylesheet" media="all" href="css/screen.css" /> <!--[if lte IE 7]> <link type="text/css" rel="stylesheet" media="all" href="css/screen_ie.css" /> <![endif]--> </head> <body> <div id="main_container" align="center"> <div style="background-color:#f2f2f2"> <a href="http://blog.afriend.in"><img src="http://blog.afriend.in/blog.afriend.in.png"/></a> </div> <H1>Live Demo | Free gmail, facebook type chat application using CSS, jQuery and PHP @ <a href="http://blog.afriend.in">blog.afriend.in</a></H1> -> Supports both space and special characters <- <h2><a style='color:green' href="java script:void(0)" onclick="java script:chatWith('1','Swadesh')">Chat with Swadesh</a></h2> <h2><a style='color:green' href="java script:void(0)" onclick="java script:chatWith('3','Vimla')">Chat with Vimla</a></h2> <!-- YOUR BODY HERE --> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <h2>Current User Session</h2> <?=$_SESSION['chatuser_name']?> (ID = <?=$_SESSION['chatuser']?> ) <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <h2> <a href="http://itswadesh.wordpress.com/2011/05/07/gmail-facebook-style-jquery-chat/">Back to tutorial</a></h2> </div> <script type="text/javascript" src="js/jquery.min.js"></script> <script type="text/javascript" src="js/chat.js"></script> </body> </html>
<?php if ($_GET['action'] == "chatheartbeat") { chatHeartbeat(); } if ($_GET['action'] == "sendchat") { sendChat(); } if ($_GET['action'] == "closechat") { closeChat(); } if ($_GET['action'] == "startchatsession") { startChatSession(); } if ($_GET['action'] == "chatname") { chatName(); } if ($_GET['login'] == "login") { login(); } } } function chatHeartbeat() { $sql = "select rejestracja.login,chat.from,chat.message,chat.to,chat.id,chat.sent,chat.recd from chat,rejestracja where (chat.to = '".mysql_real_escape_string($_SESSION['chatuser'])."' AND recd = 0) and chat.from=rejestracja.uid order by id ASC"; $items = ''; $items = $_SESSION['chatHistory'][$chat['from']]; } $chat['message'] = sanitize($chat['message']); $items .= <<<EOD { "s": "0", "u": "{$chat['login']}", "f": "{$chat['from']}", "m": "{$chat['message']}" }, EOD; $_SESSION['chatHistory'][$chat['from']] = ''; } $_SESSION['chatHistory'][$chat['from']] .= <<<EOD { "s": "0", "u": "{$chat['login']}", "f": "{$chat['from']}", "m": "{$chat['message']}" }, EOD; $_SESSION['openChatBoxes'][$chat['from']] = $chat['sent']; } foreach ($_SESSION['openChatBoxes'] as $chatbox => $time) { $message = "Sent at $time"; if ($now > 180) { $items .= <<<EOD { "s": "2", "f": "$chatbox", "m": "{$message}" }, EOD; $_SESSION['chatHistory'][$chatbox] = ''; } $_SESSION['chatHistory'][$chatbox] .= <<<EOD { "s": "2", "f": "$chatbox", "m": "{$message}" }, EOD; $_SESSION['tsChatBoxes'][$chatbox] = 1; } } } } $sql = "update chat set recd = 1 where chat.to = '".mysql_real_escape_string($_SESSION['chatuser'])."' and recd = 0"; if ($items != '') { } ?> { "items": [ ] } <?php } function chatBoxSession($chatbox) { $items = ''; $items = $_SESSION['chatHistory'][$chatbox]; } return $items; } function startChatSession() { $items = ''; foreach ($_SESSION['openChatBoxes'] as $chatbox => $void) { $items .= chatBoxSession($chatbox); } } if ($items != '') { } /* $suser=$_SESSION['chatuser']; $sc=mysql_query("select login from rejestracja where login='$su'"); while($row_sc=mysql_fetch_array($sc)) { $_SESSION['current_chat_username']=$row_sc['login']; }*/ ?> { "items": [ ] } <?php } function chatName() { $un = ''; $su=$_GET['usw']; { $un=$row_sc2["login"]; } ?> { } <?php } function sendChat() { $from = $_SESSION['chatuser']; $to = $_POST['to']; $message = $_POST['message']; $sql = "select rejestracja.login from rejestracja where rejestracja.uid='$from' limit 1"; $from_user=''; $from_user=$un['login']; } $messagesan = sanitize($message); $_SESSION['chatHistory'][$_POST['to']] = ''; } $_SESSION['chatHistory'][$_POST['to']] .= <<<EOD { "s": "1", "u": "{$from_user}", "f": "{$to}", "m": "{$messagesan}" }, EOD; $sql = "insert into chat (chat.from,chat.to,message,sent) values ('".mysql_real_escape_string($from)."', '".mysql_real_escape_string($to)."','".mysql_real_escape_string($message)."',NOW())"; } function closeChat() { } function sanitize($text) { return $text; }
Dodatkowo zauważyłem że jak napisze cos na tym czacie do innej osoby to się jej to nie wy¶wietla (trzeba od¶wieżyć stronę)