![]() |
| | Themen-Optionen | Thema durchsuchen |
| | Nach oben #1 |
| Erfahrener Benutzer Registriert seit: 08.01.2006 Ort: Mannheim
Beiträge: 483
|
Hallo, ich habe wieder angefangen selbstständig mit PHP zu programmieren. Jetzt hab ich leider ein Problem, und der Code leidet auch sehr darunter. Folgendes Problem. Ich möchte einen Termin in der DB speichern. Daten: indate (Zeit als der Beitrag erstellt wurde) uid (User ID des Verfassers) outdate (Zeit des Termins) message (Der Text der angezeigt werden soll) ip (IP-Adresse des Users) Wie bekomm ich jetzt die Zeit in die Tabelle? Welches Format müssen die Zeilen haben? Wichtig ist, das die Zeit beim ausgeben wieder in zwei verschiedenen Spalten angezeigt werden soll. Einmal das Datum, und einmal die Uhrzeit. Wäre sehr nett, wenn mir einer einfach mal kurz den Code geben könnte. Ich verzweifel nur grad, und wollte eigentlich noch weiter machen ....... Jan
__________________ Jan info.malte-gerth.de ================================= Nutzt bitte lieber Jabber statt ICQ: malte.gerth@jabber.cz |
| | |
| | Nach oben #2 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.516
| |
| | |
| | Nach oben #3 |
| Martin Breuer Registriert seit: 17.08.2005 Ort: Berlin
Beiträge: 1.653
|
Ich finde es extrem nervig, wenn Daten (Mehrzahl von Datum) in einer bestimmten Art und Weise in der DB landen. Unixtimestamp und der Rest wird über die Applikation angepasst, so muss man bei Mehrsprachigkeiten z.b. nicht dauernd rechnen und tun, sondern kann schön von einer universellen Basis sich das zurechtmachen und beliebig darstellen.
__________________ I did it my way - Senseless-Blog Weihnachtsgeschenk? Schülern helfen - Bodypainting Kalender für 2009 |
| | |
| | Nach oben #4 |
| Erfahrener Benutzer Registriert seit: 08.01.2006 Ort: Mannheim
Beiträge: 483
|
Ja, Unixtimestamp ist sicherlich gut, aber wie bekomm ich den zusammen, wenn ich ein Formular hab, wo man den Tag, den Monat, das Jahr, die Stunde und die Minuten aus einer Selectliste auswählt? Wie kann ich dann aus diesen Werten einen Timestamp erzeugen?
__________________ Jan info.malte-gerth.de ================================= Nutzt bitte lieber Jabber statt ICQ: malte.gerth@jabber.cz |
| | |
| | Nach oben #6 |
| n00b -.- Registriert seit: 10.11.2005
Beiträge: 318
|
Jopp... In etwa so dann, ne? PHP-Code:
__________________ Alle wollen doch nur mein Bestes. Aber sie werden es nicht kriegen! |
| | |
| | Nach oben #7 | |
| Bastian Fenske Registriert seit: 04.01.2006 Ort: Kassel
Beiträge: 853
| Zitat:
Es spricht erstmal nichts dagegen, die Zeitpunkte als Feld "DATE" oder "DATETIME" anzulegen. Der Vorteil ist, dass du so über die ganze Palette der MySQL(/...) - Zeit- und Datumsfunktionen zugreifen kannst. Wie du das Datum dann in der PHP-Awendung abbildest ist letztlich Wursch - am besten natürlich in einem entsprechenden Datatype-Objekt, ds nach auße ohnehin nicht preisgit, wie die Werte intern gespeichert werden. Basti | |
| | |
| | Nach oben #8 |
| Lutz Registriert seit: 14.08.2005 Ort: Nienburg / Weser
Beiträge: 690
|
Sicherlich ist zum Rechnen der Unix-Timestamp die bessere Wahl der Speicherung, jedoch sollte man bedenken, dass der Unix-Timestamp etwas unübersichtlich ist, wenn man selber in der Datenbank direkt mal ab und zu unterwegs ist. Schließlich muss man immer rechnen, bevor man sieht, welches Datum sich hinter dem Unix-Timestamp befindet und ich nehme niemandem ab, dass er auf den ersten Blick sieht, welches Datum da denn nun steht. Abgesehen davon finde ich es auch deutlich schöner, das Datum über den Query zu formatieren, als hinterher noch extra wieder PHP-Code dafür verwenden zu müssen.
__________________ Paradox ist, wenn jemand für seinen Alkoholkonsum geradestehen soll |
| | |
| | Nach oben #9 | |
| Erfahrener Benutzer Registriert seit: 08.01.2006 Ort: Mannheim
Beiträge: 483
|
So, jetzt hab ich das Problem gelöst. Das Datum wird als Unixtimestamp gespeichert. Ich gebe jetzt das Datum im Format "d.m.Y" in einem Textfeld aus. Jetzt möchte ich, das man das Datum ändert, und dann beim Absenden das Datum (zBsp: 25.11.2006 ) wieder als Timestamp in die Datenbank kommt. Wie bekomm ich das hin? Zitat:
PHP-Code: Also die Sommerferien sich ändern, die Herbstferien und so weiter. Jeweils mit dem datum das in dem textarea eingegeben wurde.
__________________ Jan info.malte-gerth.de ================================= Nutzt bitte lieber Jabber statt ICQ: malte.gerth@jabber.cz | |
| | |
| | Nach oben #10 | |
| Christian Mühlroth Registriert seit: 04.09.2005 Ort: Nürnberg
Beiträge: 561
| http://us2.php.net/function.mktime Zitat:
__________________ http://www.ChrisDiary.De | |
| | |
| | Nach oben #11 |
| Erfahrener Benutzer Registriert seit: 08.01.2006 Ort: Mannheim
Beiträge: 483
|
Ich habe das Problem, das das Datum im Format 11.05.2003 vorliegt. Wie kann ich das den mit mktime verwenden?
__________________ Jan info.malte-gerth.de ================================= Nutzt bitte lieber Jabber statt ICQ: malte.gerth@jabber.cz |
| | |
| | Nach oben #12 |
| Christian Mühlroth Registriert seit: 04.09.2005 Ort: Nürnberg
Beiträge: 561
|
Du wendest explode() oder preg_split() auf deinen String an, und übergibst dann die Parameter an mktime()
__________________ http://www.ChrisDiary.De |
| | |
| | Nach oben #13 |
| Erfahrener Benutzer Registriert seit: 08.01.2006 Ort: Mannheim
Beiträge: 483
|
hehe, ist mir auch eingefallen, habs aber erst getestet, und dann hattest du schon geantwortet. Trotzdem danke. Es werden wahrscheinlich noch mehr fragen kommen
__________________ Jan info.malte-gerth.de ================================= Nutzt bitte lieber Jabber statt ICQ: malte.gerth@jabber.cz |
| | |
| | Nach oben #14 |
| Bastian Fenske Registriert seit: 04.01.2006 Ort: Kassel
Beiträge: 853
|
Um das Array für mktime() zu erhalten, bietet sich strptime() an. Da musst du nur das Format angeben, den Eingabe-String übergeben und erhältst eben ein Array mit Jahr, Monat, etc. Beispiel z.B. von "pwadas at gazeta dot pl" auf php.net/strptime Und, wenn du die Vorteile, Zeiten in MySQL in DATETIME zu halen und in PHP mit dem Timestamp zu handeln, dann kannst du den Timestamp aus einem DATETIME-Feld auch einfach mit der MySQL-Funktion UNIX_TIMESTAMP() auslesen: http://dev.mysql.com/doc/refman/5.0/...functions.html Auch interessant vielleicht der Artikel in der dclp-faq: http://php-faq.de/q/q-datum-mysql.html Basti |
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | Thema durchsuchen |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [PHP] Zeitformate, Datum und Co | Jann Hendrik | Tutorials | 0 | 05.12.2006 18:48 |
| Eigenes Datum | Maybe | PHP-Programmierung | 8 | 19.02.2006 18:59 |
| Deutsches Datum in englisches Umwandeln | la-finest | PHP-Programmierung | 16 | 03.02.2006 12:15 |
| Datum Anzeigen / Speichern | doria | PHP-Programmierung | 27 | 02.12.2005 12:00 |
| Datum von morgen ermitteln | Lautsprecher | Allgemeine Java-Programmierung | 2 | 08.11.2005 15:34 |