Page 1 of 1

English Date in Guestbook / Englisches Datum im Gästebuch

Posted: Wed 19. Oct 2005, 22:34
by MPerio
Hi,

I use in my guestbook template the tag: {TIMESTAMP:l, j. F Y H:i}

Now, the entry date is displayed like: Tuesday, 18. October 2005 21:04

What must I do to display the german date like: Dienstag, 18. Oktober 2005 21:04?

Thank you
****************************************
Hi,

ich verwende in meiner Gästebuchvorlage das Tag: {TIMESTAMP:l, j. F Y H:i}

Das Datum der Einträge wird aber nur Englisch angezeigt: Tuesday, 18. October 2005 21:04

Was muss ich ändern, damit dort das Datum in deutsch angezeigt wird?
Dienstag, 18. Oktober 2005 21:04

Danke

Posted: Thu 20. Oct 2005, 09:37
by cwenet
Hi,

please try this in your file (guestbook template)
\phpwcms_template\inc_cntpart\guestbook\default.html

Code: Select all

[PHP]
  $guestbook_id = {DBID};
  $query ="SELECT guestbook_created FROM phpwcms_guestbook WHERE guestbook_id='$guestbook_id'";
  $result = mysql_query($query) or die(mysql_error());
  $row = mysql_fetch_array($result);
  setlocale(LC_TIME, 'German_Germany'); // Für WINDOWS
  //setlocale(LC_TIME, 'de_DE'); Für LINUX
  echo strftime('%A, %d. %B %Y %H:%M', $row[0]);
  [/PHP]
It works for me on a WIN machine.
For more information please see:
http://faq-php.de/q/q-datum-deutsch.html

Warnung: setlocale() ist nicht thread-safe, d.h. die Einstellungen wirken sich in Multithread-Umgebungen u.U. auch auf andere, parallel laufende Scripte aus!


Regards
Christoph

Posted: Mon 24. Oct 2005, 23:21
by MPerio
Hi,

@cwenet: thank you for your help, but it doesn't work in my enviroment, maybe I did an error :?

But I have a new solution and it works in my case

I get the german date by replacing the {TIMESTAMP:} - tag

Code: Select all

[PHP]

/**************************************************************************
* PHPScript fuer automatisches Datum
* Autor: Mark Kronsbein (mk@php-homepage.de)
* Datum der letzten Änderung: 18. Mai 1999
* Anmerkung: Der meiste Code an diesem Script stammt von
* Frédéric Pierron (pierron@ext.jussieu.fr)
* Ich habe den Code nur modifiziert und übersetzt.
*
* License: GPL. Wäre nett, wenn ich eine Mailbekommen würde,
* wo das Script eingesetzt wird
*
* geaendert fuer netandmore.de Huschiar Madjidi (huschiar@netandmore.de)
* Datum der letzten Änderung: 07. Maerz 2001
*
* geaendert fuer phpwcms - guestbook template Thomas Domdey (domdey@gmx.net)
* Datum der Aenderung: 24. October 2005
*
* Maske: "Heute ist Mittwoch, der 07. März 2001"
**************************************************************************/



/* Name der Tage auf deutsch */
/* Name of days in German */

$name_tag[0] = "Sonntag";
$name_tag[1] = "Montag";
$name_tag[2] = "Dienstag";
$name_tag[3] = "Mittwoch";
$name_tag[4] = "Donnerstag";
$name_tag[5] = "Freitag";
$name_tag[6] = "Samstag";

/* Name der Monate auf deutsch */
/* Name of months in German */

$name_monat[1] = "Januar";
$name_monat[2] = "Februar";
$name_monat[3] = "März";
$name_monat[4] = "April";
$name_monat[5] = "Mai";
$name_monat[6] = "Juni";
$name_monat[7] = "Juli";
$name_monat[8] = "August";
$name_monat[9] = "September";
$name_monat[10] = "Oktober";
$name_monat[11] = "November";
$name_monat[12] = "Dezember";


$num_tag = {TIMESTAMP:w};
$num_monat = {TIMESTAMP:m};

/* Test, ob der aktuelle Monat < 10 ist */
/* Test, if the current month is < 10th month */

$test = substr($num_monat,0,1);
if ($test == "0") {
$num = substr($num_monat,1,1);
$num_monat = $num;
}


$jahr = {TIMESTAMP:Y};
$n = {TIMESTAMP:d};
$tag = $name_tag[$num_tag];
$monat = $name_monat[$num_monat];


print "$tag, $n. $monat $jahr {TIMESTAMP:H:i}";

[/PHP]