mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 29.03.2024 14:46 Benutzername: Passwort: Auto-Login

Thema: Wie bekomm ich mit PHP meinen Zeit-Wert wieder umgewandelt? vom 01.06.2007


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> Wie bekomm ich mit PHP meinen Zeit-Wert wieder umgewandelt?
Autor Nachricht
mitami
Threadersteller

Dabei seit: 21.01.2003
Ort: Bavaria
Alter: 49
Geschlecht: Männlich
Verfasst Fr 01.06.2007 13:51
Titel

Wie bekomm ich mit PHP meinen Zeit-Wert wieder umgewandelt?

Antworten mit Zitat Zum Seitenanfang

Hallo zusammen.

Ich sitz momentan an einem kleinen Projekt, um PHP zu lernen. Dazu hab ich in PHP MyAdmin eine Tabelle angelegt, wo ich mittels Formular neben Aktivitäten, Ländern usw. auch Datum (Beginn einer Reise) eingegeben hab. In meiner Datenbank wird mir der Datums Wert so --> (1181080800) eingetragen, wenn ich in über ein Formular übermittel. Wenn ich jetzt meine Daten aus der Datenbank auslese, liefert er mir logischer Weise den Wert auch so zurück.

Wie kann ich diesen Wert wieder umwandeln, bzw. wie muss meine function aussehen, dass das normale Datum wieder erscheint?


Wie Anfangs schon erwähnt, bin ich ein Neuling auf diesem Gebiet und würde mich über eure Hilfe sehr freuen. * Ich bin unwürdig *
  View user's profile Private Nachricht senden
beeviZ

Dabei seit: 30.09.2002
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Fr 01.06.2007 14:01
Titel

Antworten mit Zitat Zum Seitenanfang

date('d.m.Y', 1181080800);
  View user's profile Private Nachricht senden
Anzeige
Anzeige
mitami
Threadersteller

Dabei seit: 21.01.2003
Ort: Bavaria
Alter: 49
Geschlecht: Männlich
Verfasst Fr 01.06.2007 14:34
Titel

Antworten mit Zitat Zum Seitenanfang

Hmm, funzt nicht so ganz aber liegt wahrscheinlich daren, dass ich nicht so recht weiß, wo ich das schreiben soll * Keine Ahnung... *
  View user's profile Private Nachricht senden
schachbrett

Dabei seit: 11.10.2006
Ort: Köln
Alter: -
Geschlecht: Männlich
Verfasst Fr 01.06.2007 15:11
Titel

Antworten mit Zitat Zum Seitenanfang

Und jetzt???

Manual * Such, Fiffi, such! *
  View user's profile Private Nachricht senden
pRiMUS

Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht: Männlich
Verfasst Fr 01.06.2007 16:59
Titel

Antworten mit Zitat Zum Seitenanfang

dein sql statement entsprechend anpassen, nebenbei noch deine datenbank anpassen, wäre das gescheiteste. da du uns wichtigen code vorenthälst rate ich einfach mal:

Code:
select from_unixtime(datumsspalte, '%d.%m.%Y') as datum_formatiert from tabelle


so, oder so in der art solltest du das in der mysql db direkt abfragen, und nicht erst php damit belästigen.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Sa 02.06.2007 00:38
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
In meiner Datenbank wird mir der Datums Wert so --> (1181080800) eingetragen

Das ist ein Unix-Timestamp. Es ist die Anzahl der Sekunden seit dem 1.1.1970 0:00.

Zitat:
dein sql statement entsprechend anpassen

Ja, eventuell.
Zitat:
nebenbei noch deine datenbank anpassen, wäre das gescheiteste.

Aber das würde ich wahrscheinlich nicht tun.
Klar kann man MySQL-Datumsfelder nutzen, aber für viele Dinge nehme ich einfach ein Integer-Feld, in dem ich Unix-Timestamps speichere.
Je nachdem, was man nachher nämlich damit machen möchte, kann man diese Timestamps viel besser verarbeiten.
Man kann damit auch viel besser rechnen.
Wenn man jetzt z.B. wissen will, wieviel Minuten/Stunden/Tage zwischen dem 23.4.2006 und dem 1.6.2007 vergangen sind, kann man das mit den Unix-Timestamps wunderbar ausrechnen. Hat man die Zeit aber in irgendeinem quasi "nicht standarisiertem" Format als String, dann wird es problematisch.

Und man kann die Timestamps später in quasi jedes gewünschte Datums-/Zeitformat konvertieren.

Also je nachdem, was man machen will, sind die Timestamps besser.
Braucht man das Datum, um in MySQL die Datensätze beispielsweise nach der Eintragszeit zu sortieren, wäre eines der MySQL-Zeit-Felder besser geeignet.
Das kommt halt immer auf den Einsatzzweck ein.

BTW:
Für Anfänger:
In MySQL gibt es auch "Timestamp".
Ein MySQL-Timestamp ist aber was ganz anderes als ein Unix-Timestamp.



EDIT:
Zitat:
date('d.m.Y', 1181080800);

Eine Möglichkeit...
strftime() wäre auch ein Weg.


Zuletzt bearbeitet von rob am Sa 02.06.2007 00:42, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Zeithase

Dabei seit: 09.05.2005
Ort: Erfurt
Alter: 39
Geschlecht: Männlich
Verfasst Sa 02.06.2007 00:55
Titel

Antworten mit Zitat Zum Seitenanfang

rob hat geschrieben:
Man kann damit auch viel besser rechnen.
Wenn man jetzt z.B. wissen will, wieviel Minuten/Stunden/Tage zwischen dem 23.4.2006 und dem 1.6.2007 vergangen sind, kann man das mit den Unix-Timestamps wunderbar ausrechnen. Hat man die Zeit aber in irgendeinem quasi "nicht standarisiertem" Format als String, dann wird es problematisch.


Code:
mysql> SELECT id,date1,date2,DATEDIFF(date1,date2) AS differenz_tage, TIMESTAMPDIFF(SECOND,date2,date1) AS differenz_sekunden FROM diff;
+----+------------+------------+----------------+--------------------+
| id | date1      | date2      | differenz_tage | differenz_sekunden |
+----+------------+------------+----------------+--------------------+
|  1 | 2007-06-29 | 1991-02-14 |           5979 |          516585600 |
|  2 | 2007-06-02 | 1982-09-30 |           9011 |          778550400 |
+----+------------+------------+----------------+--------------------+
2 rows in set (0.00 sec)


Schon mal was von DATETIME, DATE und STR_TO_DATE gehoert?


Zuletzt bearbeitet von Zeithase am Sa 02.06.2007 00:57, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
pRiMUS

Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht: Männlich
Verfasst Sa 02.06.2007 06:48
Titel

Antworten mit Zitat Zum Seitenanfang

der zeithase bringts auf den punkt. das date/datetime format ist für datums und zeitberechnungen einfach geeigneter als ein timestamp. alles andere ist einfach am thema vorbei. evtl nochmal die mysql doku konsultieren, was man denn alles mit den datums und zeitfunktionen innerhalb mysql anstellen kann. auch rechnen Lächel
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen Pantonefarbe in RGB umgewandelt > unterschiedliche Werte
Alles über $_POST wird komisch umgewandelt
Wie bekomm ich das hin?
Wie bekomm ich das in PS hin?
wo bekomm ich furnierblder?
Wie bekomm ich ein scoller in Flash hin?
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.