ich muss als Hausaufgabe ein Gästebuch schreiben. Leider schaffe ich es nicht, 2 Buttons neben den Gästebucheinträge hinzuzufügen. Eines soll dafür sein, seinen Gästebucheintrag wieder zu löschen (Löschbutton) und einer soll dafür sein, sein Gästebucheintrag editieren zu können.
Die Funktionen hierfür muss ich nachdem ich die 2 Buttons endlich habe, in JS und AJAX schreiben. Leider packe ich es nicht, die Buttons vernünftig einzubinden, so dass sie rechts neben den Gästebucheinträgen erscheinen.
$sql = "INSERT INTO ".$SETTINGS["data_table"]." SET date_time=now(), name='".mysql_real_escape_string($_REQUEST["name"])."', email='".mysql_real_escape_string($_REQUEST["email"])."', comment='".mysql_real_escape_string($_REQUEST["comment"])."'";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
}
?>
Gästebuch Eintrag schreiben
Name
Email
Kommentar
<?php
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." ORDER BY id DESC";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
while ($row = mysql_fetch_assoc($sql_result)) {
echo "
".stripslashes($row["name"])."
";
echo "gepostet am ".$row["date_time"]."";
echo "
".stripslashes(nl2br($row["comment"]))."
";
}
?>[/PHP]
Wäre da jemand mal so lieb und könnte mir da weiterhelfen? Falls der Code nicht ausreichend ist, habe ich mal alle Dateien in den Anhang hier gepackt.
Also irgendwie mag das nicht so wirklich! Bin doch wirklich zu blöd einfachstes HTML einzusetzen
Nach langem rumprobieren, hab ich jetzt mal den Stand gelassen. Das ganze sieht jetzt bei mir grad so aus:
[PHP]<?php
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." ORDER BY id DESC";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
while ($row = mysql_fetch_assoc($sql_result)) {
echo "
Parse error: syntax error, unexpected ‚button‘ (T_STRING), expecting ‚,‘ or ‚;‘ in C:\xampp\htdocs\guestbook1\guestbook.php on line 61
Mit einem Button hab ich es auch versucht, aber das gleiche Problem!
[PHP]<?php
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." ORDER BY id DESC";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
while ($row = mysql_fetch_assoc($sql_result)) {
echo "
".stripslashes($row["name"])."
";
echo "
gepostet am ".$row["date_time"]."
echo "
".stripslashes(nl2br($row["comment"]))."
";
}
?>[/PHP]
Gleicher Fehler wie oben:
Parse error: syntax error, unexpected ‚button‘ (T_STRING), expecting ‚,‘ or ‚;‘ in C:\xampp\htdocs\guestbook1\guestbook.php on line 61
gepostet am „.$row[„date_time“].“<a class="delete" href="#">Link 1<a class="edit" href="#">Link 2
“;
[/PHP]
Das siehst du auch ganz gut hier im Forum an der Syntax Highlighting.
Und bei dem zweiten hast du ein Semikolon vergessen, die Fehlermeldung besagt das ja schon.
[PHP]
echo "
gepostet am „.$row[„date_time“].“
[/PHP]
Da musst du aber auch wieder escapen
Achja und noch etwas, falls auch der Quellcode begutachtet wird bzgl. Hausaufgabe. Dann solltest du dir mysqli_* anschauen, denn mysql_* Funktionen sind deprecated, also veraltet und werden womöglich ab der nächsten PHP Version rausgenommen.
Du packst die Strings, die von echo ausgegeben werden sollen, ja bereits in doppelte Anführungszeichen. Deshalb erwartet PHP dann, dass nach dem doppelten Anführungszeichen, dass nach „class=“ steht, die Ausgabe beendet ist und erwartet dahinter entweder ein Semikolon oder halt anderen PHP-Code.
Du könntest, wenn du das Escapen umgehen möchtest, die echo-Strings in einfache Anführungszeichen packen, also so: