2016-10-21 4 views
-5

heute speichern ich auf ein Problem lief in,beste Art und Weise individueller Zeitstempel

i ein Eingabefeld machen will, wo die Menschen ein Datum auswählen und setzen dieses Datum in meine MySQL-Datenbank mit dem Zeitstempel-Typ. Wie kann ich tun etwas wie das

Meine Datenbank wie diese automatisch

enter image description here

+0

Fragen Sie nur, wie Sie Daten in eine Datenbank einfügen? Was hast du probiert? – David

+0

Ich habe so viele Dinge ausprobiert, aber irgendwie kann ich es nicht bekommen, also mache ich einen Formulareingabetyp, wo Sie das Datum wählen und das gegebene Datum mit der Einfügung in die Datenbank eingeben können –

+0

Nun, können Sie ein Beispiel von etwas Ihnen bieten habe versucht und erklärt, wie es nicht wie erwartet funktioniert hat? Welches Debugging hast du gemacht und wo genau scheitert es? Die Frage, wie man Daten in eine Datenbank einfügt, wird im Allgemeinen mit "Beginnen Sie mit einem Tutorial und versuchen Sie es" beantwortet. – David

Antwort

-1

Der Zeitstempel wird eingefügt sieht aus, als Ihre Datumsspalte in der Datenbank mit

CURRENT_TIMESTAMP

gekennzeichnet

Übergeben Sie einfach einen leeren Wert.

+0

Es ist, aber ich möchte ein HTML-Formular machen, wo Sie das Datum auswählen und das Datum, das Sie wählen, in die Datenbank eingeben können. –

+0

Dann müssen Sie zuerst Ihre Datenbank ändern und diese Markierung entfernen. Die zweite Sache ist, das Eingabedatum richtig zu formatieren und es dann in der mysql-Abfrage zu übergeben. – Blackbam

+0

Sie müssen den aktuellen Zeitstempel nicht entfernen. Das wird nur verwendet, wenn kein Wert angegeben wird, und könnte für die Leute, die heute wählen, nützlich sein. Stellen Sie nur sicher, dass Sie Daten im richtigen Format einfügen, da Peck3277 darauf hinweist –

2

Sie müssen es in diesem Format "Y-m-d H: i: s" speichern.

Wenn es nicht bereits im obigen Format ist, verwenden Sie die DateTime Klasse.

$userInput = "20/12/2016"; 
$date = DateTime::CreateFromFormat("d/m/Y", $userInput); 

Sie haben jetzt ein Datetime-Objekt. Damit können Sie es formatieren

$date->format('Y-m-d H:i:s); 

Hinweis verwendet: Ich würde persönlich ein Datetime-Feld verwenden, anstatt ein Zeitstempel-Feld.

0

Ich weiß nicht, was genau Sie wollen.

$date = $_POST['date']; 
$timestamp = date('Y-m-d H:i:s', strtotime($date)); 

dann fügen Sie $timestamp in Ihre Datenbank ein.

+0

das sieht gut aus, mein Eingabefeld sieht dann so aus wie ? –

+0

Die Eingabe kann ein beliebiger Eingabetyp, Text, Datum usw. sein, aber damit der Code funktioniert, muss er 'name =" date "' sein, um '$ _POST ['date']' zu füllen –

Verwandte Themen