PHP MySQL: Umgang mit Datumsformaten zum Einfügen
Beim Einfügen von Datumsangaben in eine MySQL-Datenbank ist es wichtig sicherzustellen, dass sie mit den erkannten übereinstimmen Formate. Ein häufiges Problem bei der Verwendung von jQuery Datepicker sind Abweichungen zwischen dem im Picker angezeigten Datumsformat und dem von MySQL erwarteten Format.
Im bereitgestellten Code ist die Datumszeichenfolge von jQuery Datepicker im Format „MM/TT/JJJJ“. '-Format, das von MySQL nicht direkt erkannt wird. Wie in der MySQL-Dokumentation zu Datums- und Zeitliteralen angegeben, können gültige MySQL-Datumsliterale in den Formaten „JJJJ-MM-TT“, „JJ-MM-TT“, „JJJJMMTT“ oder „JJMMTT“ vorliegen.
An Um dieses Problem zu beheben, können Sie die folgenden Schritte ausführen:
-
Datumsauswahl so konfigurieren, dass ein unterstütztes Format zurückgegeben wird:Verwenden die Optionen altField und altFormat im jQuery-Datepicker, um ein alternatives Feld zum Speichern des Datums im unterstützten Format anzugeben.
-
Konvertieren Sie die Datumszeichenfolge mit STR_TO_DATE(): Konvertieren Sie die von jQuery empfangene Datumszeichenfolge Verwenden der MySQL-Funktion STR_TO_DATE() in ein unterstütztes Format.
-
Verwenden Sie ein DateTime-Objekt in PHP: Analysieren Sie die Datumszeichenfolge mit der DateTime-Klasse von PHP, die verschiedene Methoden zum Bearbeiten und Formatieren von Datumsangaben bereitstellt.
-
Datumszeichenfolge manuell bearbeiten: Extrahieren Sie die einzelnen Komponenten der Datumszeichenfolge und verketten Sie sie im richtigen Format.
Zusätzlich Überlegungen:
-
SQL-Injection-Sicherheitslücke: Der bereitgestellte Code ist anfällig für SQL-Injection, da er keine vorbereiteten Anweisungen verwendet. Verwenden Sie immer vorbereitete Anweisungen, um Ihren Code vor böswilligen Eingaben zu schützen.
-
Veraltete MySQL-Erweiterung: Die im Code verwendeten mysql_*-Funktionen sind veraltet; Erwägen Sie stattdessen die Verwendung der Erweiterungen mysqli oder PDO_MySQL.
-
Empfehlung für die DATE-Spalte: Erwägen Sie für Datumswerte ohne Zeitkomponenten die Verwendung des DATE-Typs von MySQL anstelle von DATETIME oder TIMESTAMP.
Das obige ist der detaillierte Inhalt vonWie gehe ich beim Einfügen von Daten aus jQuery Datepicker in MySQL richtig mit Datumsformaten um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!