Time
Klaus
- php
Guten Morgen
ich bin gerade dabei ein Newsscript zu basteln und habe einen Fehler auf den ich absolut nicht komme.
mit folgendem Code speicher ich einen Kommentar zur News in die Datenbank.
Jedoch wird das Datum in der Datenbank auf 00000000000000...
das time gibt mir auch nur 10 stellen aus.. aber in der Datenbank ist es auf Timestamp(14) gestellt und das klappt alles nicht..
kann mir jemand helfen??
c_datum timestamp(14) Ja NULL
$datsi=time();
$sql = mysql_query("INSERT INTO newcomment VALUES ('', '$n_id', '$poster', '', '$kommentar')");
Huhu Klaus
$datsi=time();
$sql = mysql_query("INSERT INTO newcomment VALUES ('', '$n_id', '$poster', '', '$kommentar')");
Mmmmh, Du übergibst hier einen Leerstring '' für die
timestamp-Spalte.
Da kann natürlich kein sinnvolles Datum bei rauskommen.
Du müsstest
a) Gar keinen Wert übergeben, dann würde MySQL automatisch die Systemzeit vergeben, sofern dies die erste Timestamp-Spalte ist.
Dann musst Du allerdings alle Spalten explizit vorgeben.
b) den aktuellen Timestamp im Query selbst übergeben. (Format beachten)
Viele Grüße
lulu
ooops sorry hatte beim testen vergessen das wieder einzusetzen..
also normalerweise hatte ich keinen leerstring übergeben sondern die variable datsi da drinn...
mit leer hab ich es auch schon probiert aber da kommt gar nix... immer 0 .. wenn ich die variable datsi vorher ausgebe kommt ein richtiger timestamp von 10 zeichen...
aber in der datenbank stehen dann 14 x ne 0...
Huhu Klaus
mit leer hab ich es auch schon probiert aber da kommt gar nix... immer 0 .. wenn ich die variable datsi vorher ausgebe kommt ein richtiger timestamp von 10 zeichen...
aber in der datenbank stehen dann 14 x ne 0...
"Unix Timestamp Format (Zähler der Sekunden seit 1970)" != "MySQL Timestamp Format (YYYYMMDDHHIISS)"
Du musst also z.B. mit date() Deinen Unixtimestamp richtig formatieren.
Wenn es die aktuelle Zeit sein soll kannst Du im Insert-Query auch einfach
NOW() schreiben.
Viele Grüße
lulu