php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 15.12.2011, 13:42  
Erfahrener Benutzer
 
Registriert seit: 08.10.2010
Beiträge: 200
PHP-Kenntnisse:
Anfänger
djsky01 ist zur Zeit noch ein unbeschriebenes Blatt
Standard Datumsfeld in db

Hallo,
ich habe in einer Tabelle ein Feld namens Datum, das auch als date erstellt wurde.
Wenn ich jetzt ein Datum (zum Beispiel: 15.05.2012) reinschreibe, steht das in der Tabelle umgekehrt drinnen, also (2012.05.15)
Jetzt müsste ich also das Datum irgendwie umwandeln, damit ich eben mit yyyy.mm.dd in die Datenbank kommt. Das is ja auch kein Problem. Jedes Mal wenn ich einen Datensatz auslese, müsste ich das nun wieder zurückwandeln.
Auch das ist alles kein Problem.
Ich frag mich jetzt einfach nur, ob man das nicht irgendwie einstellen kann, dass das Datum in der Tabelle gleich richtig gespeichert wird, dann könnte ich mir das ewige hin und her wandeln ersparen.
zum db erstellen verwende ich phpmyadmin.
djsky01 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 15.12.2011, 14:09  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.486
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

Das DATE-Format von MySQL ist festgelegt, da wirst Du nichts dran ändern können. Aber schau Dir mal DATE_FORMAT an. Das sollte Dir alle Sorgen nehmen:
Code:
SELECT DATE_FORMAT(column, '%d.%m.%Y') AS myDate FROM table
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Albert Einstein
Arne Drews ist offline   Mit Zitat antworten
Alt 15.12.2011, 14:12  
Erfahrener Benutzer
 
Registriert seit: 08.10.2010
Beiträge: 200
PHP-Kenntnisse:
Anfänger
djsky01 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

super danke schön, das hat mir schon weiter geholfen. Super.
djsky01 ist offline   Mit Zitat antworten
Alt 15.12.2011, 14:22  
Erfahrener Benutzer
 
Registriert seit: 08.10.2010
Beiträge: 200
PHP-Kenntnisse:
Anfänger
djsky01 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

soo, doch noch nicht ganz erledigt.
Jetzt muss ich das Datum natürlich auch noch anders in die datenbank reinschreiben.
Habs jetzt mal so versucht,(mit heutigem Datum im Format 15.12.2011). Das Ergebnis in der Datenbank ist aber komischerweise 01.01.1970??
PHP-Code:
//$datum=15.12.2011
$anf ="INSERT INTO ".$tabellenname;
    
$anf.=" (datum,infotyp,betreff,erinnern,info,persnr) VALUES (";
    
$anf.="'".mysql_real_escape_string(date("Y.m.d",$datum))."',";  
    
$anf.="'".mysql_real_escape_string($infotyp)."',";  
    
$anf.="'".mysql_real_escape_string($betreff)."',";  
    
$anf.="'".mysql_real_escape_string($erinnern)."',";  
    
$anf.="'".mysql_real_escape_string($info)."',";  
    
$anf.=$persnr.") "
djsky01 ist offline   Mit Zitat antworten
Alt 15.12.2011, 14:28  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.486
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

DATE erwartet ein String im Format YYYY-MM-DD (gibt auch andere Varianten, die akzeptiert werden, aber das hier ist die grundlegende).
Dementsprechend mußt Du das Datum zusammenbauen. Alles was als ungültig interpretiert wird wird als 01.01.1970 interpretiert.
Für Deinen Fall mußt Du also bspw. einen String im Format '2011-12-15' übergeben.

Steht übrigens alles noch ausführlicher in der Doku!
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Albert Einstein
Arne Drews ist offline   Mit Zitat antworten
Alt 15.12.2011, 14:30  
Erfahrener Benutzer
 
Benutzerbild von Dark Guardian
 
Registriert seit: 10.10.2009
Beiträge: 2.630
PHP-Kenntnisse:
Fortgeschritten
Dark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekanntDark Guardian ist jedem bekannt
Standard

PHP-Code:
date("Y.m.d",$datum
Ist $datum ein gültiger Timestamp? Warscheinlich nicht. Außerdem beachte den Hinweis von Arne. Das Format ist falsch.
__________________
"Alles im Universum funktioniert, wenn du nur weißt wie du es anwenden musst".
Dark Guardian ist offline   Mit Zitat antworten
Alt 15.12.2011, 14:33  
Erfahrener Benutzer
 
Registriert seit: 08.10.2010
Beiträge: 200
PHP-Kenntnisse:
Anfänger
djsky01 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

nein, das datum kommt von einer textbox.
okay, das heißt ich muss mir die date-funktion genauer ansehen.
djsky01 ist offline   Mit Zitat antworten
Alt 15.12.2011, 14:34  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.486
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

Ja, DarkGuardian hat natürlich auch recht. Habe mir Deinen Code ehrlich gesagt gar nicht angesehen. $datum entpsricht so wie Du es angibst natürlich keinem gültigen Timestamp, der aber bei date() verlangt wird!

EDIT
Zitat:
okay, das heißt ich muss mir die date-funktion genauer ansehen
...eher mktime & Co.
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Albert Einstein
Arne Drews ist offline   Mit Zitat antworten
Alt 15.12.2011, 14:38  
Erfahrener Benutzer
 
Registriert seit: 08.10.2010
Beiträge: 200
PHP-Kenntnisse:
Anfänger
djsky01 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

also so funktionierts auch nicht:
PHP-Code:
    $anf.="'".mysql_real_escape_string(date("Y-m-d",$datum))."',"
Zumindest das müsste jetzt stimmen.
Ah, weil das Datum von einer Textbox kommt, is es kein date, also muss ich das wahrscheinlich umwandeln.
djsky01 ist offline   Mit Zitat antworten
Alt 15.12.2011, 14:41  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.486
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

siehe EDIT im vorigen Post!
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Albert Einstein
Arne Drews ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
berechnetes Datumsfeld ausgeben lassen raps PHP Tipps 2009 3 07.04.2009 09:31
MySql - Datumsfeld - Inhalte trennen .. Helmuth74 PHP Tipps 2006 6 18.01.2006 22:38
Ausgabe Wochentag und Kalenderwoche aus Datumsfeld in MySQL PHP Tipps 2005-2 3 20.07.2005 21:57
Fehler in Update-Query (Datumsfeld) Datenbanken 1 07.07.2005 11:56
HTML_QuickForm Datumsfeld als "required" markieren bluebird PHP-Fortgeschrittene 1 24.05.2005 00:30
Datum formatieren? Bronks PHP Tipps 2004 1 29.10.2004 06:56

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
textfeld mit datum php, php deutsches datumsformat insert mysql

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:26 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum