Heim >Datenbank >MySQL-Tutorial >Wie behebt man „0000-00-00 00:00:00'-Datumseinfügungsfehler in PHP und MySQL?
PHP MySQL-Datumsformat einfügen: Problem mit ungültigem Datum beheben
Das Einfügen eines Datums in eine MySQL-Datenbank kann manchmal zu einem Fehler in der Datenbank führen fügt trotz korrektem Datumsformat im Code nur „0000-00-00 00 00 00“ ein. Dieses Problem tritt auf, wenn das Datumsformat von MySQL nicht erkannt wird.
Um dieses Problem zu beheben, müssen unbedingt die angegebenen Datumsformate eingehalten werden, die MySQL akzeptiert:
Im angegebenen Code wird das Datum im Format „25.08.2012“ empfangen, das von nicht erkannt wird MySQL. Daher müssen wir das Datumsformat in eines der unterstützten Formate ändern.
Optionen zur Lösung des Datumsformatproblems:
altField und <code data-type="javascript">altFormat, um das Format anzugeben, in dem das Datum an das PHP-Skript übergeben wird. Beispiel: <code data-type="javascript">altFormat: „yyyy-mm-dd“.
Verwenden Sie die Funktion STR_TO_DATE(): Konvertieren Sie die Datumszeichenfolge mithilfe von STR_TO_DATE() in das von MySQL unterstützte Format. Funktion. Beispiel:
INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
DateTime-Objekt verwenden: Konvertieren Sie die Datumszeichenfolge in ein PHP-DateTime-Objekt, rufen Sie die formatierte Zeichenfolge ab und verwenden Sie sie in der Einfügeabfrage. Beispiel:
$dt = \DateTime::createFromFormat('m/d/Y', $_POST['date']); $date = $dt->format('Y-m-d'); INSERT INTO user_date VALUES ('', '$name', '$date')
Datumszeichenfolge bearbeiten:Datumszeichenfolge manuell bearbeiten, um sie in ein gültiges MySQL-Format zu konvertieren. Beispiel:
$parts = explode('/', $_POST['date']); $date = "$parts[2]-$parts[0]-$parts[1]"; INSERT INTO user_date VALUES ('', '$name', '$date')
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWie behebt man „0000-00-00 00:00:00'-Datumseinfügungsfehler in PHP und MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!