• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Array mit for/foreach ausgeben Problem

eismann90

New member
Hallo, ich habe mal wieder ein Problem mit einer Array...

Ich bastele gerade an meiner eigenen Community herum mit Profil, Gästebuch und so weiter.

Einmal gibt es für jeden User ein Gästebuch, welches z.b. mir angezeigt wird, wenn ich sein Profil besuche, also für Besucher.
Jetzt hab ich noch eine "Verwaltung" also wenn ich mir mein eigenes Profil anschaue. Dort möchte ich in meinem Gästebuch auch einzelne Einträge wieder löschen können. Das kennt ja jeder, denke ich mal ;-)

Die Gästebucheinträge werden in eine Array eingelesen und in einer Textdatei abgespeichert.

Nur jetzt habe ich einen Hänger, ich komme nicht mehr weiter -.-


So denke ich mal könnte es aussehen, funktioniert aber leider nicht.

gb.php
PHP:
$kommentare=file("../".$_SESSION['username']."/gaestebuch.txt");
for($i=0;$i<sizeof($kommentar);$i++){
echo $kommentar[$i];
echo "<form method=\"post\" action=\"gb.php\">";
echo "<textarea style=\"display:none\" name=\"nummer\"></textarea>";
echo "<input type=\"submit\" name=\"button\" value=\"löschen\">";
echo "</form>";
}

und wenn löschen erfolgt
PHP:
if($_POST[nummer]){
$kommentare=file("../".$_SESSION['username']."/gaestebuch.txt");
unset($kommentare[$_POST[nummer]]);
}


Ich bin leider jetzt ein wenig Ratlos.

Vielen Dank fürs durchlesen und eure Hilfe!
 
So denke ich mal könnte es aussehen, funktioniert aber leider nicht.
"funktioniert nicht" ist keine Fehlerbeschreibung.
Was macht denn der Code? Was hast Du bislang unternommen, um den Fehler einzugrenzen? Hast Du Dir z.B. mal die Inhalte der einzelnen Variablen ausgeben lassen?
 
Zuletzt bearbeitet:
Du schickst nirgends die Post-ID mit.
Außerdem ist dein <textarea style="display:hidden"..> ist etwas ungewöhnlich, dafür gibt es doch <input type="hidden"...>.
und aus deinem $_POST[nummer] sollte ein $_POST['nummer'] werden
 
So werden die Einträge gespeichert...
PHP:
$kommentare=file("../".$_SESSION['username']."/gb.txt");
$daten="Eintrag halt";
array_unshift($kommentare,$daten);

$buch=fopen("../".$_SESSION['username']."/gb.txt","w");
$text = implode("\n",$kommentare);  
fwrite($buch, $text); 
fclose($buch);


PHP:
$kommentare=file("../".$_SESSION['username']."/gb.txt");
for($i=0;$i<sizeof($kommentare);$i++){
echo $kommentare[$i];
echo "<form method=\"post\" action=\"gb.php\">";
echo "<textarea style=\"display:none\" name=\"nummer\">".$i."</textarea>";
echo "<input type=\"submit\" name=\"button\" value=\"löschen\">";
echo "</form>";
}

Ich habs schon mit explode() versucht, doch dann spuckt er mir einfach nur ,,Array" aus.

PHP:
if($_POST['nummer']){
$kommentare=file("../".$_SESSION['username']."/gb.txt");
unset($kommentare[$_POST['nummer']]);
}

Hier mal ein Bild, was ich jetzt ausgespuckt bekomme :??:

http://partypiczsaar.piranho.de/test/screens/fehler.jpg
 
Zuletzt bearbeitet:
Zurück
Oben