Ich habe Probleme, das Datum korrekt in meine Datenbank einzufügen.
$date = date('m/d/Y h:i:s', time());
Ich verwende dieses Format, und es wird korrekt wiedergegeben, jedoch wenn ich es einsetze
mysql_query("INSERT INTO table
(dateposted)
VALUES ('$date')");
es scheint nicht erfolgreich zu funktionieren, und die Zeit bleibt 00:00:00 Wenn Sie die Lösung finden könnten, wäre das großartig, danke.
Wenn Sie die aktuelle Uhrzeit speichern möchten, verwenden Sie einfach die Funktionen von MYSQL.
mysql_query("INSERT INTO `table` (`dateposted`) VALUES (now())");
Wenn Sie dazu PHP verwenden müssen, versuchen Sie es mit dem Format Y-m-d H:i:s
$date = date('Y-m-d H:i:s');
mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$date')");
Versuchen Sie es stattdessen
$date = date('Y-m-d H:i:s');
NOW()
wird verwendet, um das aktuelle Datum und die aktuelle Uhrzeit in die MySQL-Tabelle einzufügen. Alle Felder mit Datentypen DATETIME, DATE, TIME & TIMESTAMP
funktionieren gut mit dieser Funktion.
JJJJ-MM-TT HH: mm: SS
Demonstration:
Der folgende Code zeigt die Verwendung von NOW()
INSERT INTO auto_ins
(MySQL_Function, DateTime, Date, Time, Year, TimeStamp)
VALUES
(“NOW()”, NOW(), NOW(), NOW(), NOW(), NOW());
sie können die Funktion CURRENT_TIMESTAMP, mysql verwenden
legen Sie type
der Spalte namens dateposted
als DATETIME
fest und führen Sie die folgende Abfrage aus:
INSERT INTO table (`dateposted`) VALUES (CURRENT_TIMESTAMP)
" datetime " erwartet, dass das Datum folgendermaßen formatiert wird: JJJJ-MM-TT HH: MM: SS
formatieren Sie Ihr Datum also beim Einfügen so.
Der beste Weg, es einfacher und effizienter zu machen, ist folgender:
CREATE TABLE table_name (
field1,
..
..
time_updated timestamp default current_timestamp
)
Wenn Sie nun eine Zeile in die Tabelle einfügen, können Sie dieses Feld (time_updated
) überspringen, da es sich als Standardwert mit der aktuellen Uhrzeit füllt
<?php $date= date("Y-m-d");
$time=date("H:m");
$datetime=$date."T".$time;
mysql_query(INSERT INTO table (`dateposted`) VALUES ($datetime));
?>
<form action="form.php" method="get">
<input type="datetime-local" name="date" value="<?php echo $datetime; ?>">
<input type="submit" name="submit" value="submit">
Wenn Sie Datum von PHP übergeben, können Sie ein beliebiges Format verwenden, indem Sie STR_TO_DATE()
mysql function ..__ verwenden. Sie können Conseder das Datum über das HTML-Formular einfügen
$Tdate = "'".$_POST["Tdate"]."'" ; // 10/04/2016
$Tdate = "STR_TO_DATE(".$Tdate.", '%d/%m/%Y')" ;
mysql_query("INSERT INTO `table` (`dateposted`) VALUES ('$Tdate')");
Die Variable dateposted
sollte vom Typ mysql date
sein. oder mysql addiert 00:00:00
In einigen Fällen sollten Sie Datum und Uhrzeit zusammen in die Datenbank einfügen, um die Berechnung mit Stunden und Sekunden durchzuführen. ().
$Tdate=date('Y/m/d H:i:s') ; // this to get current date as text .
$Tdate = "STR_TO_DATE(".$Tdate.", '%d/%m/%Y %H:%i:%s')" ;
Ich glaube, Sie müssen Ihren Code ein wenig wie folgt ändern, zusammen mit dem Typ Ihrer Datenbank.
mysql_query("INSERT INTO table (`dateposted`) VALUES ($datetime)");
Hoffe, wird perfekt funktionieren.
$ date = date ('Y-m-d H: i: s'); mit dem typ: 'datetime' hat bei mir sehr gut geklappt, da ich das ganze datum und den zeitstempel drucken wollte ..
$ date = date ('Y-m-d H: i: s'); $ stmtc-> bindParam (2, $ date);
Verwenden Sie einfach Ihre Zeitzone:
date_default_timezone_set('Asia/Kolkata');
$date=date("Y/m/d h:i:sa");