Datum? (1. Januar 1970)

nordi

Erfahrenes Mitglied
Hi, hab ein kleines Problem mit meinem Gästebuch. Das Datum und die Uhrzeit stimmt nicht:

Hier speicher ich die Sachen ab:

PHP:
$query = "INSERT INTO $gb (name, email, url, message, entry_date) " . 
             "VALUES ('$name', '$email', '$url', '$message', current_date)";

Und hiermit rufe ich sie wieder ab:

PHP:
$query = "SELECT id, name, email, url, message, DATE_FORMAT(entry_date, '%d.%m.%Y') ".

Am Ende rufe ich das dann mit $zeitausgabe & $zeit1 über:

PHP:
list($id, $name, $email, $url, $message, $date) = $row; 
				
      //  $name    = htmlspecialchars($name); 
      //  $message = htmlspecialchars($message); 
		
      //$message = str_replace('[ b ]','<b>', $message);
		// $message = str_replace('[ /b ]','</b>', $message);

		// $message = str_replace('[ img ]','<img src="', $message);
		// $message = str_replace('[ /img ]','" border="0">', $message);

        // $message = nl2br($message); 
		
$zeit1 = date("H:i",$date); 
$zeit2 =  date("d.m.y",$date);

$monate = array(1=>"Januar",
                  2=>"Februar",
                  3=>"M&auml;rz",
                  4=>"April",
                  5=>"Mai",
                  6=>"Juni",
                  7=>"Juli",
                  8=>"August",
                  9=>"September",
                  10=>"Oktober",
                  11=>"November",
                  12=>"Dezember");
				  
$tag 	= date("d",$date);
$monat = date("n",$date);
$jahr 	= date("y",$date);
$zeitausgabe = "$tag. $monate[$monat] '$jahr";

Das müsste doch so gehen, oder? Ich bekomm aber immer nur 1. Januar 1970 1.00 Morgens raus ;)
 
Dieses datum (1. Januar 1970 1.00) bedeutet den timestamp 0 (damals wurde der Timestamp initialisiert um berechnungen mit dem Datum zu vereinfachen)

Demnach wird das Datum garnicht in die tabelle eingefügt und ein Standartwert 0 angenommen was dann diesem Datum entspricht.

Der Fehler liegt also beim eintragen aber wo genau kann ich dir leider auch nicht sagen
 
Ich trag doch das Datum mit "current_date" ein. Wenn ich mit phpMyAdmin in die Gästebuch Datenbank gucke, dann steht unter "entry_date" auch "2005-08-23 00:00:00"

Hab gerade nochmal geguckt. Ausgegeben wird im Gästebuch:

vom 01. Januar '70 um 01. Januar '70

Ich schnalls nicht!?
 
Als ich mit SQL einen Timestamp eintragen wollte ging das bei mir auch nicht (anstatt des Timestamps 112432526 (Sekunden seit 1. Jan 1970) schreibt es 20050823145511 (YmdHis) rein was dann ein Timestamp von 2037 ist :p

ich würde einen timestamp in PHP erstellen (nicht mit SQL) mit time() (oder mktime() wenn du nicht das aktuelle datum willst) dann sollte es funktionieren hat es bei mir jedenfalls :)

Trotzdem: wenn du aus einem Timestamp ein Datum erstellst und es kommt der 1. Jan. 1970 raus, dann ist der Eingabe-Timestamp afaik 0
 
Hab den Fehler selber gefunden. Hab anstatt current_date "time" genommen und in der Datenbank bisschen rumprobiert! klappt jetzt
 
Zurück