Probleme mit Datum
Raffi
- php
0 Tobias K.0 Raffi
0 Sönke Tesch
Hallo Ihr
Habe gleich 2 Probleme mit dem Datum
1. Ist es möglich wie beim AutoIcrement das Datum des Datensatzes in der MYSQL Datenbank automatisch zu speichern. Das heisst im Prinzip das Speicherdatum und Zeit des Eintrages.
2. wie kann ich die Datumsausgabe formatieren.
Bei mir kommt einfach 20021225153000 raus
Das sollte: 15.30 / 25.12.2002 heissen
gruss und danke raffi
Hallo Raffi,
- Ist es möglich wie beim AutoIcrement das Datum des Datensatzes in der MYSQL Datenbank automatisch zu speichern. Das heisst im Prinzip das Speicherdatum und Zeit des Eintrages.
wenn das Feld den typ 'timestamp' hat wird automatisch der aktuelle Timestamp gespeichert (allerdings auch beim ändern)
- wie kann ich die Datumsausgabe formatieren.
Bei mir kommt einfach 20021225153000 raus
wenn du was machst?
Das sollte: 15.30 / 25.12.2002 heissen
du musst das ganze einfach mit date() (->http://www.php.net/de/date) formatieren (einschließlich Punkten usw.)
Grüße aus Nürnberg
Tobias
Das mit dem Format hab ich hingekriegt danke
Das mit dem Timestamp...funktioniert das nicht, wenn ich im php myadmin einen neuen Datensatz anlege? Danach habe ich im Feld Timestamp
00000000000000
gruss
raffi
- Ist es möglich wie beim AutoIcrement das Datum des Datensatzes in der MYSQL Datenbank automatisch zu speichern. Das heisst im Prinzip das Speicherdatum und Zeit des Eintrages.
Wie bereits geschrieben, ist dafür der Typ timestamp zuständig. Der wird allerdings nur dann automatisch gesetzt/-ändert, wenn Du selbst nichts oder den Wert NULL (nicht 0!) für das Feld angibst und die Änderung betrifft IIRC auch nur das erste Feld.
Wenn möglich, schau Dir mal den Befehl an, den phpMyAdmin zusammenstellt. Stellst Du "Funktion" vom für timestamp standardmäßigen now() auf Leer, wird der Wert "" eingesetzt. "" ist aber etwas anderes als NULL, deshalb erscheint die Angabe 0000... in diesem Datensatz. Willst Du die aktuelle Zeit haben, mußt Du schon entweder now() stehenlassen (gibt die aktuelle Zeit zurück) oder das Häkchen in der Spalte NULL setzen.
Gibst Du später Daten per PHP o.ä. ein, lässt Du die Angabe für das timestamp-Feld einfach komplett weg.
Die Beschreibung der MySQL-Datentypen findest Du in der MySQL-Anleitung: http://www.mysql.com/documentation/mysql/bychapter/manual_Reference.html#Date_and_time_types. Lesen bildet :>
- wie kann ich die Datumsausgabe formatieren.
Bei mir kommt einfach 20021225153000 raus
Das sollte: 15.30 / 25.12.2002 heissen
http://www.mysql.com/documentation/mysql/bychapter/manual_Reference.html#Date_and_time_functions. Lesen bildet :>
Willst Du das MySQL-Datum lieber per PHP formatieren, dann achte bitte darauf, daß die lange Zahl, die MySQL als Datum zurückgibt, nicht das ist, was die meisten Sprachen als "unix timestamp" erwarten! Um ein MySQL-Datum an PHPs Datumsfunktionen übergeben zu können, mußt Du den SQL-Befehl unix_timestamp() auf das MySQL-Feld anwenden.
Gruß,
soenk.e