Smarty: Datumsauswahl und UTF8

10. May, 2011 · Keine Kommentare

Smarty bietet die praktische Funktion {html_select_date} (Doku) – mit den verfügbaren Parametern kann man das Ergebnis gut an die eigenen Bedürfnisse anpassen – zum Beispiel an das deutsche Datumsformat mit einem Datum, welches bis zu 5 Jahren in der Zukunft liegen darf – die drei generierten Variablen haben zudem das Prefix “ts_to_”:

{html_select_date end_year=date("Y")+5 prefix='ts_to_' field_order='DMY'}

Will man die Monatsnamen ebenfalls in deutsch angezeigt bekommen, sollte man in einer zentralen Konfigurationsdatei die Sprache definieren:

setlocale (LC_ALL, 'de_DE@euro', 'de_DE', 'de', 'ge');

Hat man dann zu guter letzt noch Probleme mit der Codierung (z.B. UTF-8) – hilft die Verknüpfung von Funktionen – z.B.:

{html_select_date|utf8_encode end_year=date("Y")+5 prefix='ts_to_' field_order='DMY'}

Resultieren tut die Eingabe des Users in die Variablen ts_to_Day, ts_to_Month und ts_to_Year (variiert mit dem gewählten Prefix!). Die serverseitige Weitervergabe kann dann zum Beispiel via mktime erfolgen um einen Timestamp zu generieren:

$timestamp = mktime(0, 0, 0, $_REQUEST["ts_to_Month"], $_REQUEST["ts_to_Day"], $_REQUEST["ts_to_Year"]);

Ihren XING-Kontakten zeigen Artikel bei Xing veröffentlichen
Kategorie:PHP · Smarty · Webdev
Tags: · · ·

Vorheriger Eintrag: Nächster Eintrag:

meet me in the interwebs
Kaffee-Kasse
Flattr ist ein sehr gut gemachter Micropayment Dienst, der es endlich ermöglicht auf faire Weise Geld zu spenden und einzunehmen.