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
1Warning: implode() [function.implode]: Bad arguments. in /home/www/web22/html/shoutbox2.php on line 44
Was macht array_unshift() mit meinem Array?
Das, was in der Anleitung steht :) Informiere Dich bitte, bitte, bitte erstmal darüber, was genau die Funktion file() eigentlich zurück gibt, dann erklärt sich bestimmt auch die erste ausgebene Zeile (http://www.php.net/manual/de/function.file.php, beachte bitte die Beispiele!).
Ähnlich sieht es mit array_unshift() aus: Auch hier solltest Du erstmal in die Anleitung schauen und Dich darüber informieren, was die Funktion zurück gibt (http://www.php.net/manual/de/function.array-unshift.php).
Und sage bitte nicht, Du hättest schon reingeschaut und wüsstest es - das ist ganz offensichtlich nicht der Fall.
Was das else angeht: Gib vor den jeweiligen if-Zeilen Deine Bedingungen 1:1 mit var_dump() aus. Auf Variablen, die von außen kommen (wie Dein $submit zum Beispiel), solltest Du _niemals_ direkt zugreifen, sondern immer nur über die dafür vorgesehenen Felder $_GET, $_POST, $_COOKIE, etc (siehe auch php_info()).
Und gewöhne Dir vielleicht einen etwas übersichtlicheren Schreibstil an. Wenn Du alles in der ersten Spalte anfängen lässt, verlierst Du recht schnell den Überblick - und Leute, die Du um Rat fragst, erst recht.
Gruß,
soenk.e