Heim > Backend-Entwicklung > PHP-Tutorial > Wie fügt man Daten aus PHP richtig in MySQL ein?

Wie fügt man Daten aus PHP richtig in MySQL ein?

Susan Sarandon
Freigeben: 2024-11-27 03:56:12
Original
349 Leute haben es durchsucht

How to Properly Insert Dates from PHP into MySQL?

So fügen Sie Datumsangaben in MySQL mit PHP ein

Das Einfügen von Datumsangaben in MySQL kann eine verwirrende Aufgabe sein, insbesondere wenn unterschiedliche Datumsformate verwendet werden. In diesem Artikel wird gezeigt, wie das häufig auftretende Problem beim Einfügen von Daten mit PHP und MySQL gelöst werden kann, wobei der Schwerpunkt auf dem Problem „PHP-MySQL-Datumsformat einfügen“ liegt.

Das Problem

Bei Verwendung des jQuery-Datumswählers hat das Datumsformat normalerweise die Form „MM/TT/JJJJ“ (z. B. „25.08.2012“). Allerdings erfordert MySQL, dass Datumswerte in einem der folgenden Formate vorliegen:

  • 'JJJJ-MM-TT'
  • 'JJ-MM-TT'
  • JJJJMMTT
  • JJMMTT

Es wird versucht, ein Datum in das einzufügen Das Format „MM/TT/JJJJ“ führt zu einem Fehler und dem Einfügen von „0000-00-00 00:00:00“.

Lösung

Es gibt Mehrere Optionen, um dieses Problem zu beheben:

  1. Datumsauswahl konfigurieren: Legen Sie fest altFormat- oder dateFormat-Optionen auf „JJJJ-MM-TT“, um sicherzustellen, dass Datepicker Datumsangaben im richtigen Format bereitstellt.
  2. Verwenden Sie STR_TO_DATE(): Konvertieren Sie die Datumszeichenfolge mithilfe von STR_TO_DATE( in das MySQL-Format. ) Funktion:
INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))
Nach dem Login kopieren
  1. In PHP konvertieren DateTime: Erstellen Sie ein PHP-DateTime-Objekt und formatieren Sie das Datum oder rufen Sie den Zeitstempel ab:
$dt = DateTime::createFromFormat('m/d/Y', $_POST['date']);
$date = $dt->format('Y-m-d'); // formatted string
$timestamp = $dt->getTimestamp(); // UNIX timestamp for FROM_UNIXTIME() function
Nach dem Login kopieren
  1. Manipulieren Sie die Zeichenfolge manuell: Teilen Sie die Datumszeichenfolge in Teile auf und verketten Sie es im erforderlichen Format:
$parts = explode('/', $_POST['date']);
$date = "$parts[2]-$parts[0]-$parts[1]";
Nach dem Login kopieren

Wichtig Hinweise

  • Verwenden Sie vorbereitete Anweisungen, um SQL-Injection zu verhindern.
  • Die mysql_*-Funktionen sind veraltet. Erwägen Sie stattdessen die Verwendung von mysqli oder PDO_MySQL.
  • Erwägen Sie die Verwendung des DATE-Typs anstelle von DATETIME oder TIMESTAMP für die Datumsspeicherung.

Durch die Implementierung einer dieser Lösungen können Sie Datumsangaben erfolgreich in die einfügen korrektes Format in MySQL.

Das obige ist der detaillierte Inhalt vonWie fügt man Daten aus PHP richtig in MySQL ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage