Frage

Ich benutze PHPMyAdmin und ich habe eine MySQL-Tabelle Spalte namens bekam „Zeitstempel“. Die Art (Überraschung!) Ist TIMESTAMP, und in 'Attribute' ich es festgelegt haben, um ON UPDATE CURRENT_TIMESTAMP.

Doch jeder neue Datensatz erhält einen Zeitstempel, der wie folgt aussieht:

0000-00-00 00:00:00

ich ausdrücklich den Standardwert none gesetzt haben, aber wenn ich mir sparen und wieder zu, ist es, wie oben auf Null gesetzt.

Die entsprechende PHP Datensätze Seite trifft mit dieser Abfrage:

$query = "INSERT INTO `pagehit` (user_id, pageurl)
VALUES ('" . $userid . "', '" . $pageurl . "')";

Das Ganze wird unter XAMPP läuft.

Was bin ich fehlt?

War es hilfreich?

Lösung

  

Was bin ich fehlt?

Sie werden nicht aktualisiert:)

Mit DEFAULT CURRENT_TIMESTAMP zusammen mit ON UPDATE CURRENT_TIMESTAMP

Andere Tipps

Versuchen Sie, den Standardwert einstellen, anstatt CURRENT_TIMESTAMP davon in den Attributen setzen.

MySQL-Referenz

Wenn Sie Ihre timestamp Spalte erfasst nur die Einfügung Zeit verwenden Sie dann nur

timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP

Ansonsten, wenn es für die Änderungszeit ist dann wie wie folgt verwenden

timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

In meinem Fall funktioniert wie folgt:

In phpMyAdmin:

ALTER TABLE `name_table`  ADD  `name_row` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP;

In PHP sintax für die Zeile:

date('Y-m-d H:i:s')
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top