daten werden nicht in mysql gespeichert

Ich will von php aus daten in einer mysql-db eintragen, aber sie werden nicht eingetragen. Ich habe mit dem selben Code schon daten gespeichert, und es hat funktioniert.

[PHP]

<?php session_start(); ?> <?php $verbindung = mysql_connect("localhost", "alogheo", "alogheo") or die ("keine Verbindung möglich. Benutzername oder Passwort sind falsch"); mysql_select_db("homepage-db") or die ("die Datenbank existiert nicht"); $name = $_SESSION["user"]; $date = date("d.m.Y - H:i",time()); $inhalt = $_POST["text"]; $eintrag = "INSERT INTO guestbook (date, from, inhalt) VALUES ('$date','$name','$inhalt')"; $eintragen = mysql_query($eintrag); ?>

[/PHP]

Verwende mysql_error() um zu schauen, was beim Eintrag der MySQL-Server dazu sagt. Lass dir das Statement auch mal in der Webseite ausgeben um zu schauen, ob es dort irgendeinen Fehler gibt.

Error:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‚from, inhalt) VALUES (‚09.01.2011 - 16:44‘,‚gt‘,‚hallo‘)‘ at line 2

was für ein error soll ich meiner sql-syntax haben??
ich weiß ja nicht ma, wo ich die richtige syntax in der anleitung finden soll, und ich habe kein bock, die gesamte anleitung durch zulesen

Hab das „suchen“-Feld gefunden :slight_smile:

aber nichts gefunden :frowning:

Was für Feldtypen sind denn die drei Felder?
date ist kein datetime oder?
Was sind from und inhalt?

date: varchar
from: varchar
inhalt: longtext

Da Du nur die Fehlermeldung aber nicht das Statement gepostet hast, vermute ich, dass der Spaltenname „from“ das Problem ist. „from“ ist ein SQL-Kommando, welches so im Statement stehend aus Sicht von MySQL an der falschen Stelle steht. Du müsstest es maskieren - das macht man mit Backticks. Also:

`from`

schreiben.

from hilft auch nicht weiter

wie bekomme ich das statement

Lass es dir mit echo, var_dump() oder irgendwas ähnlichem ausgeben?!

Sollte aber, zumindest ist das der Fehler der der Fehlermeldung, die du uns gezeigt hast zugrunde liegt.

hat jetzt doch funktioniert, es war doch das from.

dankeschön

Warum nutzt du nicht das DateTime Format von mySQL?

hatte ich ursprünglich verwendet, hatte dann aber gedacht, dass das der Fehler ein könnte, wars aber nicht