Datumskorrektur in sql via php - kniffliger als gedacht!

carstingAxion

Grünschnabel
Ich möchte Datumseinträge in einer Tabelle im Format >> 10. Juni 2001 << in ein timestamp ähnliches Format, wie folgt >> JJJJMMTTSSMMSS << bringen.

Leider wird der string nach dem str_replace nicht in die tabelle geschrieben, kann allerdings ge-echo-t werden. Ich versteh das nicht. hier der code.
Ich bete, dass ihr mir helfen könnt.

PHP:
# Datumskorrektur in YYYYMMDDHHMMSS

$ersetzen_januar = str_replace(" Januar ", "01.", $row['zeit']);
$ersetzen_februar = str_replace(" Februar ", "02.", $row['zeit']);
$ersetzen_maerz = str_replace(" März ", "03.", $row['zeit']);
$ersetzen_april = str_replace(" April ", "04.", $row['zeit']);
$ersetzen_mai = str_replace(" Mai ", "05.", $row['zeit']);
$ersetzen_juni = str_replace(" Juni ", "06.", $row['zeit']);
$ersetzen_juli = str_replace(" Juli ", "07.", $row['zeit']);
$ersetzen_august = str_replace(" August ", "08.", $row['zeit']);
$ersetzen_september = str_replace(" September ", "09.", $row['zeit']);
$ersetzen_oktober = str_replace(" Oktober ", "10.", $row['zeit']);
$ersetzen_november = str_replace(" November ", "11.", $row['zeit']);
$ersetzen_dezember = str_replace(" Dezember ", "12.", $row['zeit']);

$sql = "UPDATE `gaestebuch` SET `zeit`        '".$ersetzen_januar."',
                                              '".$ersetzen_februar."',
                                              '".$ersetzen_maerz."',
                                              '".$ersetzen_april."',
                                              '".$ersetzen_mai."',
                                              '".$ersetzen_juni."',
                                              '".$ersetzen_juli."',
                                              '".$ersetzen_august."',
                                              '".$ersetzen_september."',
                                              '".$ersetzen_oktober."',
                                              '".$ersetzen_november."',
                                              '".$ersetzen_dezember."'
                                              ";

$tab_date = ($row['zeit']);
$new_date1 = substr($tab_date,6,4);
$new_date2 = substr($tab_date,3,2);
$new_date3 = substr($tab_date,0,2);
$add_date = $new_date1.$new_date2.$new_date3."000000";

Hat jemand eine Idee, wo der Wert verloren geht?
Danke
 
tu doch einfach in die datenbank in der reihe datum
time()
einfügen

beim ausgeben machst dus dann so:
PHP:
  $d = date("d. M Y", $row->datum); //datum vormatieren
echo $d;
 
ne, da hab ich mich wohl unglücklich ausgedrückt:

In der Quelltabelle sind ja schon Datumsangaben vorhanden, die erhalten bleiben sollen.
Nur eben mit neuer Formatierung in der neuen Tabelle.
 
Danke für die konstruktiven Vorschläge.
Ich hab das jetzt mal getestet. Leider ohne ein befriedigendes Ergebnis.
bei folgendem Code:

PHP:
$d = $row['zeit'];
$ersetzen_datum = date("Y m d H i s", $d);
$sql = "UPDATE `gaestebuch` SET `zeit`		'".$ersetzen_datum."'";
echo "<br><br> sql:" .$sql;

gibts dann eine Ausgabe ala '1970 01 01 01 00 10'
Die vorhanden Datumsangaben werden ignoriert.

Gibts noch ne Möglichkeit, hat noch jemand ne Idee.
Ich halts bald nicht mehr aus.
 
Zurück