27-08-2006, 16:02
|
|
|
|
חבר מתאריך: 02.10.05
הודעות: 2,355
|
|
אוקי.. הנה הקודים המוזחים..
קוד PHP:
קוד PHP:
if ( $_GET["request"] == "connect") { header("Content-Type: text/html; charset=windows-1255");
include "db.php"; $timeremove = time()-10; mysql_query ("DELETE FROM `messenger` WHERE posted < '$timeremove'");
$query = mysql_query("SELECT serial, posted FROM messenger ORDER BY serial DESC LIMIT 1"); $array = mysql_fetch_array($query); if ($array["serial"] && $array["posted"]) $lastID = $array["serial"]; else $lastID = "0"; echo "ההתחברות הצליחה!<br />&{$lastID}"; mysql_close($mysql); } elseif ( $_GET["request"] == "fetchData") { header("Content-Type: text/html; charset=windows-1255"); include "db.php"; $lastID = $_GET['lastID']; $timeremove = time()-10; $post = ""; mysql_query ("DELETE FROM `messenger` WHERE posted < '$timeremove'"); $query = mysql_query("SELECT serial FROM messenger ORDER BY serial DESC LIMIT 1"); $array = mysql_fetch_array($query); if ( !$array["serial"] || $array["serial"] < $lastID ) $lastID = 0; $query = mysql_query ("SELECT m.text,m.level,m.posted,m.serial,p.name FROM messenger m, members p WHERE m.poster_id=p.id && m.serial>'$lastID' ORDER BY m.serial"); while ($array = mysql_fetch_array ($query)) { $post .= "[{$array["name"]}] {$array["text"]}<br />\n"; $serial = $array["serial"]; } echo "{$post}&{$serial}"; mysql_close($mysql); }
שתי היערות:
בשתי הפעולות אתה מוחק את כל מה שעבר זמנו.. למה שלא תוציא את זה מתנאי?
לא הבנתי מה זה serial..
קוד JS חלק 1:
קוד:
function View_Chat(text)
{
var ans = text.split("&");
var lastID = ans[1];
var post = ans[0];
Add_Post(post);
var real = 0.25 * 1000
setTimeout("Timer_Chat(" + lastID + ")",real);
}
function Timer_Chat(lastID)
{
var sendVars = new Array("fetchData", "lastID=" + lastID);
Ajax(sendVars, "ajax.php", "connect", "get");
}
function Connect()
{
var sendVars = new Array("connect", "");
Ajax(sendVars, "ajax.php", "connect", "get");
}
function Add_Post(sendtext)
{
document.getElementById("viewchat").innerHTML += sendtext;
}
function Click_ok()
{
var sendVars = new Array("send", "post=" + encodeURI(document.getElementById("text").value));
Ajax(sendVars, "ajax.php", "error", "get");
document.getElementById("text").value = "";
document.getElementById("submit").disabled = true;
document.getElementById("text").focus();
}
קוד JS חלק 2:
קוד:
function Ajax(sendVars, url, target, method)
{
var xmlHttp;
if (sendVars.length > 0)
{
xmlHttp = getXmlHttpObject();
switch (method)
{
case "get":
var vars = "";
for (var i = 1; i < sendVars.length; i++)
vars += "&" + sendVars[i];
sendGet(url + "?request=" + sendVars[0] + vars, target);
break;
case "post":
sendPost();
}
}
}
קוד JS חלק 3:
קוד:
function sendGet(url, target)
{
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = function()
{
if (xmlHttp.readyState==4)
{
if ( xmlHttp.responseText.length > 0 )
{
switch (target)
{
case "error":
Add_Post(xmlHttp.responseText);
break;
case "connect":
View_Chat(xmlHttp.responseText);
break;
}
}
}
}
xmlHttp.send(null);
}
function sendPost(){}
}//???
_____________________________________
נערך לאחרונה ע"י tnadav1 בתאריך 27-08-2006 בשעה 16:08.
סיבה: שכחתי עוד 2 חלקי JS
|