Chat funktioniert nur lokal

Moin allesamt,

Ich hab einen Chat für php den ich bei mir mit xampp lokal ohne probleme zum laufen bekomme. Nur wenn ich ihn auf dem Web-Server starte, kommt im Hauptframe immer nur ein weisser hintergrund, ohne den chatstream anzuzeigen, die Einträge werder aber in die Datenbank gemacht wenn ich was schreibe.

Ich hab da leider nicht so den Schimmer von, vielleicht liegts ja auch an einer variablen der PHP-Umgebung???

Den Chat findet Ihr hier: http://doofi.do.ohost.de/chatneu/indexc.php

Wär schön wenn jemand einen Tipp hätte. Ach ja, getestet hab ich das mit IE6 und Firefox 1.07

Schon mal danke Micha

ohne sourcecode wird es schwer da was zu sagen.
Ich hab hier einen Timeout. Die Datei
stream.php mit meiner cid=9fcce6e7eaa64dff9db6c337f2d73325
braucht irgendwie zu lange oder rennt sich tot oder was weiss ich was…
Wenn ich den Parameter weglasse werd ich jedenfalls umgeleitet - das kann aber auch passieren, wenn die Datei garnicht existiert…

ohne sourcecode wird es schwer da was zu sagen.

Ich weiss nicht ob das reicht aber hier die stream.php…

<?PHP include("include/config.php");<br />include("include/mysql.php");
include("include/session.php");
$nick = strtolower($nick);
function file\_clear($file) { $out = fopen("$file", "w"); fclose($out); }
include("templates/stream.html");
echo "Chat: $basis\_version"."[$your\_version] ($basis\_date) - Stream: pdx-Engine 1.2 (10.02.2005)

";
echo "Chat: $basis\_version

";
ob\_end\_flush();
$count=0;

$ignore\_query = mysql\_query("SELECT loser FROM igliste WHERE nick='$nick'"); $ignore[] = "";
while($row = mysql\_fetch\_object($ignore\_query)) { $ignore[] = strtolower($row-\>loser); }

if(file\_exists($temp\_data)) { $lastpos = filesize($temp\_data); } else { $lastpos=0; }
$handle = fopen ($temp\_data, "a+");
fseek($handle, $lastpos);

$stream = "true";
while (!feof($handle) && $stream == "true") {

clearstatcache();
if(filesize($temp\_data) $lastpos) {
$buffer = fgets($handle, 4096);
 $explode = explode("||[\_\*\_]||", $buffer);
 if(strlen($timestamp\_color) == "6") { $timestamp = "[".date("H:i:s", $explode[0])."]"; }
 $rroom = $explode[1];
 $rnick = strtolower(strtolower($explode[2]));
 $rvar = strtolower($explode[3]);
 $rinput = $explode[4];
 if($nick == $rnick && $rvar == "changeroom") { $room = substr($rinput, 0, -1); }
 elseif($rvar == "talkadmin" && $level \>= "15") { $output = "$timestamp $rinput"; }
 elseif($rvar == "talkwa" && $level \>= "10") { $output = "$timestamp $rinput"; }
 elseif($nick == $rnick && $rvar == "lokal" && substr($rinput, 0, 6) == "logout") { $stream = "logout"; }
 elseif($rroom == $room && $rvar == "renameroom") { $room = substr($rinput, 0, -1); }
 elseif($rnick == $nick && $rvar == "rename") { $nick = substr($rinput, 0, -1); }
 elseif($rvar == "system") { $output = "$timestamp $rinput"; }
 elseif($rnick == $nick && $rvar == "addignore") { if(!in\_array(strtolower(substr($rinput, 0, -1)), $ignore)) { $ignore[] = substr($rinput, 0, -1); } }
 elseif($rnick == $nick && $rvar == "delignore") { if($value = array\_search(strtolower(substr($rinput, 0, -1)), $ignore)) { unset($ignore[$value]); } }
 elseif($rvar == "lokal" && $rnick == $nick) { $output = "$timestamp $rinput"; }
 elseif( ($rroom == $room) && (!in\_array($rnick, $ignore)) ) { $output = "$timestamp $rinput"; }
 elseif( ($rroom == "whisper") && ($rvar == $nick) && (!in\_array($rnick, $ignore)) ) { $output = "$timestamp $rinput"; }
 else { $output = ""; }
 echo stripslashes(nl2br($output));
 if($output != "") { $count=0; $no\_output=0; unset($output); }

}
else { $count++; }
if($count \>= ((1000000/$stream\_pause)\*60)) { echo "\n"; $count=0; }
clearstatcache();
$lastpos = ftell($handle);
if(filesize($temp\_data) \>= (($delete\_cache)\*(1024)) )
{
 usleep($stream\_pause);
 if(file\_exists($temp\_data))
 {
 file\_clear($temp\_data, "");
 }
}
flush();
usleep($stream\_pause);
}
fclose ($handle);

?\>

…und hier die included session.php

<?PHP $get_cid = "$_GET[cid]$_POST[cid]";<br />$get\_session = mysql\_fetch\_row(mysql\_query("SELECT ip, nick, nickcol, textcol, browser, level, room, roomstatus, awaystatus, awaymsg, gag, lastwhisp, sessionid FROM session WHERE sessionid='$get\_cid'"));
if($get\_session[0] != $\_SERVER[REMOTE\_ADDR]) { echo "<script>top.location.href=(\"indexc.php\");"; exit; }<br />else { $cid = $get_session[12]; $ip = $get_session[0]; $nick = $get_session[1]; $nickcol = $get_session[2]; $textcol = $get_session[3]; $browser = $get_session[4]; $level = $get_session[5]; $room = $get_session[6]; $roomstatus = $get_session[7]; $awaystatus = $get_session[8]; $awaymsg = $get_session[9]; $gag = $get_session[10]; $lastwhisp = $get_session[11]; }<br />?&gt;<br /></pre><br /><br />Können für diesen TimeOut irgendwelche PHP-Server-Variablen verantwortlich sein? denn lokal läuft das ganze ja bei mir...<br /><br />Danke für die Mühe <br /><br />Micha<br /></div></script>

sorry - ist ein wenig zu lang für mich um mir das alles anzuschauen…
aber eins hab ich gefunden, was mir nicht zusagt…
$get_cid = „$_GET[cid]$_POST[cid]“;

in Fällen wo GET und POST übertragen werden wird die cid hier dupliziert.
Evtl wird das durch die richtigen actions wieder korrigiert…
Trotzdem find ich das ein wenig unsauber und wäre evtl eine Fehlerquelle…