Archiv verlassen und diese Seite im Standarddesign anzeigen : Datum auslesen und woanders verändert einfügen
Hallo,
ich möchte auf meiner Benutzerkarte angeben wann diese das nächste Mal aktualisiert wird. Da dies stündlich geschieht möchte ich nur die Zeitangabe der aktuellen Stunde auslesen und damit die XX ersetzen.
Also so: XX:38 Uhr
Wie kann ich die aktuelle Stunde, bzw. überhaupt die Zeit auslesen?
Danke für eure Hilfe.
StGaensler
08.04.2006, 15:02
Das kannst du im Template selbst nicht machen, das geht nur mit php-Code -> Thema verschoben.
Dieser Funktionsaufruf liefert dir die aktuelle Stunde (ohne führende Nullen): date('G');
Genauere Informationen findest du in der php-Dokumentation zu dieser Funktion (http://de.php.net/date).
Viele Grüße,
Stefan
Ok, innerhalb einer php-Datei kann ich mir die Zeit nun ausgeben lassen. Aber wie bekomme ich diese nun in das Template der Map eingebaut?
StGaensler
08.04.2006, 18:07
Setze im hook global_start eine Variable mit dem Inhalt, den du im Template haben willst, dann kannst du im Template diese Variable verwenden.
Viele Grüße,
Stefan
Danke für den Tip. Das ist sicher ganz einfach, aber da ich noch so überhaupt keine Ahnung von Hooks und dem Hinzufügen von Variablen habe weiß ich nicht wie ich das ausführen soll.
Vielleicht ist ja jemand so nett und kann mir eine Anleitung schreiben oder weiß wo man solch eine in Deutsch findet. ;)
StGaensler
09.04.2006, 07:56
Administrator-Kontrollzentrum -> Plug-in-System -> Plug-in hinzufügen ->
Einstiegspunkt (Hook): global_start
Titel: Berechne Uhrzeit der Mapaktualisierung
PHP-Code des Plug-ins:$mapaktualisierung = 'Nächste Aktualisierung um '.date('G').':59 Uhr';
Ist das Plug-in aktiv? Ja
=> Speichern
Das Plug-in-System muss vorher noch aktiviert werden:
Administrator-Kontrollzentrum -> vBulletin-Einstellungen -> Plug-in- / Hook-System -> Plug-in- / Hook-System aktivieren -> Ja.
$mapaktualisierung kannst du dann in deinen Templates verwenden.
Den php-Code musst du halt noch entsprechend anpassen.
Viele Grüße,
Stefan
Perfekt, ich danke vielmals für den super genialen Support hier. Echt klasse! :)
Schade das man hier keine Küsse verteilen kann. :D
Upps, jetzt ist mir da gerade ein Denkfehler aufgefallen. Weil ich um XX:38 aktualisiere steht dann ab XX:39 noch immer die aktuelle Stunde dort. :eek: Müßte dann ja schon die nächste sein. Na ja, vielleicht kriege ich das ja mal selbst hingebastelt. ;)
Also leider kriege ich das mit den Variablen nicht hin. Und bei vBHacks hat natürlich noch niemand etwas dazu gesagt. :rolleyes:
StGaensler
10.04.2006, 14:39
Was "das mit den Variablen"? Das du die Variable in den Templates verwenden kannst?
Hast du das Plugin entsprechend angelegt, es auch aktiviert, ebenso wie das Plugin-System?
Bei mir funktioniert die Variable mit obigem Plugin im Template header problemlos.
Viele Grüße,
Stefan
Bei mir funktioniert Dein Vorschlag auch hervorragend, das meine ich nicht.
Die Mapaktualisierung wird immer um Minute 38 der Stunde ausgeführt.
Angenommen es ist jetzt 16:18 Uhr, somit findet die nächste Aktualisierung um 16:38 Uhr statt. Es darf keine Stunde zur aktuellen dazugezählt werden.
Angenommen es ist jetzt schon 16:48 Uhr, so muß eine Stunde zur aktuellen dazugezählt werden.
Bis Minute 37 ohne +1 Stunde, ab Minute 38 mit +1 StundeDas ist halt mein Problem, das es diese zwei Fälle gibt. Habe es übergangsweise auf die Minute 59 gelegt, weil es somit diese Schwierigkeit nicht gibt, aber das andere kann man sicher auch lösen.
Ich sehe es ein, ich muß xhtml und php lernen... :eek: :cool:
StGaensler
10.04.2006, 16:18
Dann nimm den Code:$mapaktualisierung = date('G');
if(date('i')>37) $mapaktualisierung++;
$mapaktualisierung = 'Nächste Aktualisierung um '.$mapaktualisierung.':38 Uhr';Sollte eigentlich funktionieren, habe ich jetzt nicht extra noch getestet :)
Viele Grüße,
Stefan
Danke, das ist echt klasse. Geht problemlos damit. :cool:
Hi,
oder so$minute="38";
echo "nächste Aktualisierung ".date("d.m.Y G", mktime(date("H"),date("i")+60-$minute,date("s"),date("m"),date("d"),date("Y"))).":".$minute;Hat den Vorteil, dass sich problemlos automatisch berechnete Datumsangaben einfügen lassen wie im obigen Beispiel. Zudem muss die gewünschte Minute nur 1x definiert werden.
Soll nur Stunde/Minute angegeben werden, einfach d.m.Y rausschmeißen.
Gruß
Henry
vBulletin® v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.