php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.07.2005, 01:18  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard aktuelle Zeit speichern und ausgeben

Hallo,

ich hänge grad an einem kleinen Problemchen.
Ich will beim login die aktuelle Zeit in einer Datenbank speichern (MySQL).

Erste Frage: Was muss ich da für einen Datentyp auswählen, wenn ich die Zeitdaten per getdate() hol?

Zweite Frage: wie mache ich das dan bei der Ausgabe? Das getdate() gibt ein Array zurück. Wie mache ich das jetzt aer wenn ich es aus der datenbank holen will.

Ich habe bis jetzt folgendes:

PHP-Code:
<?php
while ($row mysql_fetch_array($result))

     
$logintime=$row[UserLastLogin];
echo
"$logintime[\"mon\"]";
?>
Funktioniert nicht. Da kommt die Fehlermeldung "unexpected T_CHARACTER, expecting T_STRING or T_VARIABLE or T_NUM_STRING "

Hängt das mit dem Datentyp in meiner Datenbank zusammen? Welchen mus ich nehmen? Oder wie mach ich das sonst?
saibot ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 18.07.2005, 01:24  
Gast
 
Beiträge: n/a
Standard

Nimm als Datentyp VARCHAR mit der Länge 11.
PHP-Code:
<?php
# Dann speicher den aktuellen Timestamp ein mit 
$zeit time(); # Muss natürlich time() und nicht now() heißen ;)
# Wennn du aus der Datenbank die Zeit holst, konvertier die wie du willst
$logintime $row['UserLastLogin'];
$logintime date("d.m.Y H:s",$logintime);
echo 
$logintime# Gibt dir das Datum in dem Format aus: 11.11.1111 11:11
?>
Schau mal auf php.net nach date()

MfG dtdesign

PS: Bei deinem Code müsste die letzte Zeile wenn überhaupt nur so heißen
PHP-Code:
<?php
echo $logintime["mon"];
?>
Achja, bitte immer die Hochkommata benutzen, sonst bekommst du von PHP immer eine Notice

Immer error_reporting an!

PHP-Code:
<?php
error_reporting
(E_ALL);
ini_set("display_errors",true);
?>
 
Alt 18.07.2005, 01:28  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

super danke, das ging ja schnell

das date() hab ich gefunden, nur das now() nicht
saibot ist offline  
Alt 18.07.2005, 01:38  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

Das now() funktioniert leider nicht

Call to undefined function: now()

Brauch ich dazu noch ne Bibliothek oder so?

ich habs mal mit getdate() versucht, das funktioniert zwar, allerdings wird der UNIX Timestamp 01.01.1970 01:00 ausgegeben
saibot ist offline  
Alt 18.07.2005, 01:52  
Gast
 
Beiträge: n/a
Standard

Warte ich schau kurz nach, ich editier dann diesen Post.

Edit: Ich meinte time() nicht now()

Wenn du anstatt now() die Funktion time() einsetzt, bekommst du den aktuellen Unix-Timestamp.

Edit2: Habe meinen ersten Beitrag entsprechend ebenfalls editiert.
 
Alt 18.07.2005, 01:58  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

Super, genial Danke!!
saibot ist offline  
Alt 18.07.2005, 02:47  
Gast
 
Beiträge: n/a
Standard

Ich bin eher für den Datentyp datetime oder timestamp. Denn danach kann man richtig sortieren lassen und ggf. auch rechnen, z.B.
Code:
SELECT xyz FROM t WHERE wann > Now() - Interval 2 day
Den Zeitpunkt "Jetzt" kann mysql selbst bestimmten durch die Angabe von Now() (ja, bei mysql gibt's das im Gegensatz zu php )

Code:
CREATE TABLE `neuetabelle` (
  `Id` int(11) NOT NULL auto_increment,
  `wann` datetime NOT NULL default '0000-00-00 00:00:00',
)
Code:
INSERT INTO neuetabelle (wann) values (Now())
 
Alt 18.07.2005, 16:02  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

apropos rechnen...

wie kann ich denn z.b. die Zeitdifferenz zweier UNIX-Timestamps berechnen? Geht das überhaupt wenn ich die als VARCHAR deklariert hab?
saibot ist offline  
Alt 18.07.2005, 16:13  
Gast
 
Beiträge: n/a
Standard

Bei mysql gibt es implizite und explizite Typumwandlung.
Und wenn Du die Werte erstmal nach php abgeholt hast eh'.

Alles als Zeichenketten zu speichern, ist z.B. die Herangehensweise von sqlite.
Aber ich bin nicht Datenbankpurist genug, um auf die Möglichkeiten einer Datenbank (wenn man sich denn festlegen oder die Abfragen sinnvoll kapseln kann) mit Typisierung zu verzichten.
Timestamp als varchar bei mysql verstehe ich einfach nicht. Warum als Zeichenkette?
 
Alt 18.07.2005, 16:38  
Erfahrener Benutzer
 
Registriert seit: 14.07.2005
Beiträge: 118
saibot
Standard

ganz einfach, weil ichs jetzt so hab und es so funktioniert. Zumindest das was ich bis jetzt gemacht hab, also Zeit speichern und ausgeben.

Nur wenn ich jetzt ne Differenz ausrechnen will, komm ich damit nicht weiter.
Wie das mit dem Timestamp geht hab ich noch nicht durchschaut
saibot ist offline  
 


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
verschachtelte Rubriken ausgeben / alle anzeigen prinzli PHP Tipps 2008 3 25.02.2008 22:37
Var in DB speichern und ancher ausgeben per Mail? Matthiasnet PHP Tipps 2007 2 08.04.2007 17:48
Eintrag speichern und ausgeben 2000diablo PHP Tipps 2006 2 06.04.2006 16:17
Auswahl als Variable ausgeben / in DB speichern PHP Tipps 2006 3 14.01.2006 13:08
Bild-Dateiname in Variable speichern und mit PHP ausgeben? nicobischof PHP Tipps 2005-2 2 28.08.2005 16:16
Aktuelle Zeit PHP Tipps 2005 9 21.04.2005 21:35
Variable speichern und in SQL-Abfrage ausgeben PHP Tipps 2005 2 12.04.2005 11:10
XML speichern McWolle PHP-Fortgeschrittene 5 04.04.2005 19:38
Nachrichten nur nach bestimmter Zeit ausgeben Datenbanken 2 06.03.2005 14:52
Aktuelle Zeit minus 15 minuten ? PHP-Fortgeschrittene 6 23.11.2004 20:12
Zeit auf 100stel Sekunde messen und speichern PHP Tipps 2004 3 26.09.2004 22:55
Formular in Mysql Datenbank speichern Anuschka Datenbanken 1 15.08.2004 02:55
[Erledigt] sourcecode parsen, nicht ausgeben aber in variable speichern PHP Tipps 2004 4 09.07.2004 19:36
große XML-Datei in annehmbarer Zeit durchsuchen PHP-Fortgeschrittene 5 02.06.2004 15:44

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php zeit speichern, php aktuelle zeit, mysql aktuelle zeit, php aktuelle zeit ausgeben, php zeit ausgeben, mysql aktuelle zeit speichern, zeit speichern php, php login zeit, php aktuelle zeit speichern, mysql aktuelle zeit ausgeben, mysql insert aktuelle zeit, aktuelle zeit speichern php, mysql zeit speichern, php login zeit speichern, login zeit speichern, php zeit hundertstel, php date hundertstel, php zeit mit hundertstel, php zeit abspeichern, php timestamp hundertstel

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:23 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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.