scorn: array_unshift-Problem?

Beitrag lesen

Hallo,
ich habe ein Script geschrieben, dass als Shoutbox dienen soll, aber dank meines mangelnden PHP-Könnens funktioniert es nicht richtig:
Der else-Part wird auch ausgeführt, wenn die ersten zwei Bedingungen false sind.
Ich nehme an, dass die ersten zwei Bedingungen quasi unabhängig von der letzten Bedinung un der else-Anweisung sind, aber ich weiß nicht, wie ich das ändern kann.
Und array_unshift() bereitet mir auch Probleme:
 $posts = file("shoutbox/posts.txt");
 echo $posts . "<br>";
 $posts = array_unshift($posts,$newpost);
 echo $posts . "<br>";
 $posts = implode('',$posts);

Das gibt dann folgendes aus:
Array
1

Warning: implode() [function.implode]: Bad arguments. in /home/www/web22/html/shoutbox2.php on line 44

Was macht array_unshift() mit meinem Array?

So sieht übrigens das Script als ganzes aus:
<?php
 if(isset($submit)) {
echo "<span style="color:red">";
if($name=="Name" OR $name=="") { echo "Namen eingeben!<br>"; }
if($message=="Botschaft" OR $message=="") { echo "Botschaft eingeben!<br>"; }
 $aip = getenv($REMOTE_ADDR);
 $reip = fopen("shoutbox/oip.txt","r");
 $oip = fgets($reip,255);
 fclose($reip);
 $reip = fopen("shoutbox/time.txt","r");
 $ozeit = fgets($reip,11);
 fclose($reip);
 $azeit = time() - 15;
if($ip==$oip AND $ozeit>=$azeit) { echo "Du darfst nicht häufiger als alle 15 Sekunden schreiben.<br>"; }
else {
 $name = htmlentities($name,ENT_QUOTES,"UTF-8");
 $message = htmlentities($message,ENT_QUOTES,"UTF-8");
 $jetzt = date("D, den j.n.Y um g:i:s");
 $newpost = "<div class="blue" onMouseOver="red();beschreib(this.title);" onMouseOut="blue();mout();" title="geschrieben am ". $jetzt . "surfing ". $will . ""><b>" . $name . ": </b>" . $message . "<br><img src="res/shoutbox/line.gif" width="99%" height="3"></div>\n";
 $posts = file("shoutbox/posts.txt");
 $posts = array_unshift($posts,$newpost);
 $posts = implode('',$posts);
 $write = fopen("shoutbox/posts.txt","w");
 fputs($write,$posts);
 fclose($write);
 $ip = fopen("shoutbox/oip.txt","w");
 fputs($ip,getenv($REMOTE_ADDR));
 fclose($ip);
 $time = fopen("shoutbox/time.txt","w");
 fputs($time,time());
 fclose($time);
 }
echo "</span>";
 }
$posts = file("shoutbox/posts.txt");
for ($r=0; $r<6; $r++) {
echo $posts[$r];
}
?>

Online angucken, kann  sich das wer will auf [http://sv.stealthlogin.de/shoutbox2.php]

Kann mir jemand helfen, vor allem das mit der else-Anweisung, wo ich ja offenbar prinzipiell was missverstanden hab, ist mir wichtig!

danke,
scorn