Ich versuche, Datum in mysql einzufügen, aber jedes Mal schlägt es fehl und erscheint als 0000-00-00
in phpmyadmin
Mein Datumsformat ist wie 2012-08-06
(jjjj-mm-tt) und der Datumsfeldtyp in der Datenbank ist date
.
$date = "2012-08-06";
mysql_query("INSERT INTO data_table (title, date_of_event)
VALUES('". $_POST['post_title'] ."',
'". $date ."')") or die(mysql_error());
versuchte, -
in /
zu ändern oder sie zu entfernen, es funktioniert nicht.
versuchen Sie die Funktion CAST
in MySQL:
mysql_query("INSERT INTO data_table (title, date_of_event)
VALUES('". $_POST['post_title'] ."',
CAST('". $date ."' AS DATE))") or die(mysql_error());
versuchen
$date = "2012-08-06";
$date=date("Y-m-d",strtotime($date));
Wie Debuggen von SQL-Abfragen, wenn Sie stecken bleiben
Drucken Sie Ihre Abfrage aus und führen Sie sie direkt in mysql oder phpMyAdmin aus
$date = "2012-08-06";
$query= "INSERT INTO data_table (title, date_of_event)
VALUES('". $_POST['post_title'] ."',
'". $date ."')";
echo $query;
mysql_query($query) or die(mysql_error());
auf diese Weise können Sie sicherstellen, dass das Problem nicht in Ihrem PHP-Skript, sondern in Ihrer SQL-Abfrage liegt
Wie man Fragen zu SQ-Anfragen einreicht
Stellen Sie sicher, dass Sie ausreichend geschlossen haben
Wenn Sie kein anderes Datum als "heute" einfügen möchten, können Sie CURDATE () verwenden:
$sql = 'INSERT INTO data_tables (title, date_of_event) VALUES ("%s", CURDATE())';
$sql = sprintf ($sql, $_POST['post_title']);
PS! Vergessen Sie nicht, Ihre MySQL-Eingabe zu bereinigen, insbesondere über mysql_real_escape_string ()
versuchen Sie zuerst das Datum zu konvertieren.
$date = "2012-08-06";
mysql_query("INSERT INTO data_table (title, date_of_event)
VALUES('" . $_POST['post_title'] . "',
'" . $date . "')")
or die(mysql_error());