|  | 		    
					
        
         
          
         
	
          | |  | Vildt underlig dato-streng Fra : Jean Jensen
 | 
 Dato :  20-10-08 07:16
 | 
 |  | 
 
            Hej NG
 Dato-strengen er i hvertfald underlig for mig !
 Jeg har et forum (http://punbb.informer.com/),  som viser dato for
 oprettelse af brugere samt for indlæg.
 "1221952024" giver "21. Sep 2008"
 Hvor i min PHPadmin ændrer jeg, så visningen bliver på dansk og
 stadig med blot 3 bogstaver for måneden ?
 \ Kapunen
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
  Bertel Lund Hansen (20-10-2008) 
 
	
          | |  | Kommentar Fra : Bertel Lund Hansen
 | 
 Dato :  20-10-08 07:42
 | 
 |  | 
 
            Jean Jensen skrev:
 > Jeg har et forum (http://punbb.informer.com/),  som viser dato for
 > oprettelse af brugere samt for indlæg.
 > "1221952024" giver "21. Sep 2008"
 > Hvor i min PHPadmin ændrer jeg, så visningen bliver på dansk og
 > stadig med blot 3 bogstaver for måneden ?
 PHP-manuaklen er desværre nede, så jeg kan ikke slå op i den
 eller henvise til den.
 Der er flere danske formater.
      setlocale (LC_ALL, 'da_DK');
      $site_opdateret = filemtime($filename);
      echo "Siden er sidst opdateret ";
      echo strftime('%A den %d. %B %Y', $site_opdateret);
 vil udskrive en dansk dato som eksempelvis
      lørdag den 6. januar 1985
 setlocale() indstiller hvilken nations standarder der skal
 bruges.
 Husk at date() *ikke* tager hensyn til locale(). Det gør derimod
 strftime(). Når manualen virker, kan du slå op under strftime()
 hvilke muligheder der er:
     http://dk.php.net/ -- 
 Bertel
http://bertel.lundhansen.dk/       FIDUSO: http://fiduso.dk/ |  |  | 
  Bertel Lund Hansen (20-10-2008) 
 
	
          | |  | Kommentar Fra : Bertel Lund Hansen
 | 
 Dato :  20-10-08 07:55
 | 
 |  |  |  |  | 
   Jean Jensen (20-10-2008) 
 
	
          | |  | Kommentar Fra : Jean Jensen
 | 
 Dato :  20-10-08 09:10
 | 
 |  | 
 
            Bertel Lund Hansen wrote:
 > Bertel Lund Hansen skrev: 
 >  
 > > PHP-manuaklen er desværre nede 
 >  
 > Næ, det er den ikke. Den jeg har brugt hidtil, er bare holdt op
 > med at virke. Her er link til et opslag: 
 >  
 >      http://dk2.php.net/manual/en/function.strftime.php >  
 Hmmm...
 Jeg har følgende kildekode:
 ----------------------------------
 // Determine what locale to use
 switch (PHP_OS)
 {
     case 'WINNT':
     case 'WIN32':
         $locale = 'danish';
         break;
     case 'FreeBSD':
     case 'NetBSD':
     case 'OpenBSD':
         $locale = 'da_DK.ISO8859-1';
         break;
     default:
         $locale = 'da_DK';
         break;
 }
 // Attempt to set the locale
 setlocale(LC_ALL, $locale);
 // Language definitions for frequently used strings
 $lang_common = array(
 // Text orientation and encoding
 'lang_direction'      =>   'ltr',   // ltr (Left-To-Right) or rtl
 (Right-To-Left)
 'lang_encoding'         =>   'da_DK.ISO8859-1',
 'lang_multibyte'      =>   false,
 ----------------------------------
 - men det står stadig på engelsk...... Vil godt have det på
 dansk. (Troede at det var i PHPadmin jeg kunne sætte dette.)
 \ Kapunen
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
    Martin (20-10-2008) 
 
	
          | |  | Kommentar Fra : Martin
 | 
 Dato :  20-10-08 12:27
 | 
 |  | 
 
            Jean Jensen wrote:
 > Bertel Lund Hansen wrote:
 >> Bertel Lund Hansen skrev: 
 >>  
 >>> PHP-manuaklen er desværre nede 
 >>  
 >> Næ, det er den ikke. Den jeg har brugt hidtil, er bare holdt op
 >> med at virke. Her er link til et opslag: 
 >>  
 >>      http://dk2.php.net/manual/en/function.strftime.php >>  
 > 
 > Hmmm...
 > 
 > Jeg har følgende kildekode:
 > 
 > ----------------------------------
 > 
 > // Determine what locale to use
 > switch (PHP_OS)
 > {
 >     case 'WINNT':
 >     case 'WIN32':
 >         $locale = 'danish';
 >         break;
 > 
 >     case 'FreeBSD':
 >     case 'NetBSD':
 >     case 'OpenBSD':
 >         $locale = 'da_DK.ISO8859-1';
 >         break;
 > 
 >     default:
 >         $locale = 'da_DK';
 >         break;
 > }
 > 
 > // Attempt to set the locale
 echo $locale;
 // Hvad giver dette?
 // Hvis det giver danish, så er det forkert
 > setlocale(LC_ALL, $locale);
 > 
 > 
 > // Language definitions for frequently used strings
 > $lang_common = array(
 > 
 > // Text orientation and encoding
 > 'lang_direction'      =>   'ltr',   // ltr (Left-To-Right) or rtl
 > (Right-To-Left)
 > 'lang_encoding'         =>   'da_DK.ISO8859-1',
 > 'lang_multibyte'      =>   false,
 > 
 > ----------------------------------
 > 
 > - men det står stadig på engelsk...... Vil godt have det på
 > dansk. (Troede at det var i PHPadmin jeg kunne sætte dette.)
 > 
 > \ Kapunen
 > 
            
             |  |  | 
    Bertel Lund Hansen (20-10-2008) 
 
	
          | |  | Kommentar Fra : Bertel Lund Hansen
 | 
 Dato :  20-10-08 12:40
 | 
 |  | 
 
            Jean Jensen skrev:
 > Jeg har følgende kildekode:
 Jeg har aldrig brugt andet end 'da_DK'. Hvor har du fra at det
 skulle være forskelligt på forskellige servertyper?
 -- 
 Bertel
http://bertel.lundhansen.dk/       FIDUSO: http://fiduso.dk/ |  |  | 
     Preben Dahl (20-10-2008) 
 
	
          | |  | Kommentar Fra : Preben Dahl
 | 
 Dato :  20-10-08 13:30
 | 
 |  | Hej Jean
 
 Prøv at lave en php fil med dette og se om ikke det virker
 
 <?php
 setlocale(LC_ALL, 'Danish');
 echo strftime(" I Danmark er dato og tiden = %b %d, %Y %I:%M:%S %
 P") . "\n";
 echo strftime(" I Danmark er datoen = %b %d, %Y");
 ?>
 
 På min server virker dk_DA ikke men Danish gør :)
 
 
 Mvh Preben
 
 
 
 |  |  | 
     Mathias (21-10-2008) 
 
	
          | |  | Kommentar Fra : Mathias
 | 
 Dato :  21-10-08 09:45
 | 
 |  | >
 > Jeg har aldrig brugt andet end 'da_DK'. Hvor har du fra at det
 > skulle være forskelligt på forskellige servertyper?
 >
 
 På min server (Web10) er det kun 'da_DK.ISO8859-1' som virker. Hvorfor ved
 jeg ikke, men det er åbenbart forskelligt altefter servertype/config.
 
 Mvh Mathias
 
 
 
 |  |  | 
      Bertel Lund Hansen (21-10-2008) 
 
	
          | |  | Kommentar Fra : Bertel Lund Hansen
 | 
 Dato :  21-10-08 12:08
 | 
 |  | 
 
            Mathias skrev:
 > På min server (Web10) er det kun 'da_DK.ISO8859-1' som virker. Hvorfor ved 
 > jeg ikke, men det er åbenbart forskelligt altefter servertype/config.
 Sikke noget rod. Det burde være lavet usynligt for
 PHP-programmøren.
 -- 
 Bertel
http://bertel.lundhansen.dk/       FIDUSO: http://fiduso.dk/ |  |  | 
       Jean Jensen (21-10-2008) 
 
	
          | |  | Kommentar Fra : Jean Jensen
 | 
 Dato :  21-10-08 12:44
 | 
 |  | 
 
            Bertel Lund Hansen wrote in dk.edb.internet.webdesign.serverside.php:
 >  
 > Sikke noget rod. Det burde være lavet usynligt for 
 > PHP-programmøren. 
 >  
 Jeps!
 Jeg har nu forsøgt alle forslag og uanset hvad, så står månederne på engelsk, så
 det må være serveren der selv "oversætter". 
 Og nu orker jeg ikke dét mere, så jeg har sat dato-formatet til "d/m Y", hvilket
 giver 24/12 2008. Så er jeg ude over dét...
 1.000 tak for hjælpen, drenge    \ Kapunen
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
        Preben Dahl (21-10-2008) 
 
	
          | |  | Kommentar Fra : Preben Dahl
 | 
 Dato :  21-10-08 13:22
 | 
 |  | I sprog filen common.php står dette, er det udkommaret så det er
 aktivt og indsat de forslag vi alle er kommet med, for her tages der
 jo netop højde for hvilken server type der bruges.
 
 // Determine what locale to use
 switch (PHP_OS)
 {
 case 'WINNT':
 case 'WIN32':
 $locale = 'english';
 break;
 
 case 'FreeBSD':
 case 'NetBSD':
 case 'OpenBSD':
 $locale = 'en_US.US-ASCII';
 break;
 
 default:
 $locale = 'en_US';
 break;
 }
 
 // Attempt to set the locale
 setlocale(LC_CTYPE, $locale);
 
 Mvh Preben
 
 
 |  |  | 
        Dan Storm (21-10-2008) 
 
	
          | |  | Kommentar Fra : Dan Storm
 | 
 Dato :  21-10-08 13:29
 | 
 |  | 
 
            Jean Jensen skrev:
 > Jeg har nu forsøgt alle forslag og uanset hvad, så står månederne på engelsk, så
 > det må være serveren der selv "oversætter". 
 Dog ikke...
 > Og nu orker jeg ikke dét mere, så jeg har sat dato-formatet til "d/m Y", hvilket
 > giver 24/12 2008. Så er jeg ude over dét...
 Dit problem har så lagt i at du bruger date() istedet for strftime();
 For at strftime() skal virke skal du også sikre dig hvilket local du kan 
 bruge.
 Du kan på serveren eksekvere "locale -a" for at for alle dine locales.
 I mit tilfælde har jeg både da_DK og da_DK.ISO8859-1
 Alternativt kan du jo tjekke om du får fat i den rigtige.
 if(setlocale(LC_ALL, "da_DK.ISO8859-1") === false)
    echo "Virker ikke";
 Men nu fortæller du jo at da_DK.ISO8859-1 er det der virker på din 
 server, så istedet for at bruge date("d/m Y", $timestamp); så prøv at 
 bruge strftime("%d. %b %Y", $timestamp);
 Det skulle gerne give dig et bedre resultat.
 -- 
 Dan Storm - storm at err0r dot dk / http://err0r.dk Tro ikke brugerne vil gøre noget for at undgå dit killfilter
 - Så vigtig er du heller ikke!
            
             |  |  | 
        Philip Nunnegaard (21-10-2008) 
 
	
          | |  | Kommentar Fra : Philip Nunnegaard
 | 
 Dato :  21-10-08 16:02
 | 
 |  | "Jean Jensen" <jejSNABEL@podaPUNKTUM.com> skrev
 
 > Jeg har nu forsøgt alle forslag og uanset hvad, så står månederne på
 > engelsk, så
 > det må være serveren der selv "oversætter".
 >
 > Og nu orker jeg ikke dét mere, så jeg har sat dato-formatet til "d/m Y",
 > hvilket
 > giver 24/12 2008. Så er jeg ude over dét...
 
 Så er der jo også muligheden for at smide månedernes danske navne ind i et
 array:
 
 $maaneder = array("","jan.","feb.","mar",...osv.)
 
 echo date('d').". ".$maaneder[date('m')]." ".date('Y');
 Skulle gerne returnere: "21. okt. 2008".
 
 
 
 |  |  | 
         Bertel Lund Hansen (21-10-2008) 
 
	
          | |  | Kommentar Fra : Bertel Lund Hansen
 | 
 Dato :  21-10-08 17:59
 | 
 |  | 
 
            Philip Nunnegaard skrev:
 > Så er der jo også muligheden for at smide månedernes danske navne ind i et 
 > array:
 Det er ikke nødvendigt. Man skal bare glemme at date() eksisterer
 og altid bruge strftime().
 -- 
 Bertel
http://bertel.lundhansen.dk/       FIDUSO: http://fiduso.dk/ |  |  | 
          Philip Nunnegaard (21-10-2008) 
 
	
          | |  | Kommentar Fra : Philip Nunnegaard
 | 
 Dato :  21-10-08 20:25
 | 
 |  | "Bertel Lund Hansen" <unospamo@lundhansen.dk> skrev
 
 > Det er ikke nødvendigt. Man skal bare glemme at date() eksisterer
 > og altid bruge strftime().
 
 Kan hænde at det ikke er nødvendigt på alle servere, og det kan da også
 hænde at det ikke er nødvendigt på PHP-servere.
 Jeg havde dog engnag en ASP-side liggende på et webhotel, der konstant
 skiftede mellem dansk og amerikansk datoformat, så man ikke kunne regne med
 en dyt.
 Jeg endte med selv at definere mit eget datoformat og visningen af denne (og
 gik derfor væk fra vbLongDate). På den måde slap jeg for at være afhængig af
 hvad udbyderen måtte finde på af tossestreger.
 
 
 
 |  |  | 
           Bertel Lund Hansen (21-10-2008) 
 
	
          | |  | Kommentar Fra : Bertel Lund Hansen
 | 
 Dato :  21-10-08 22:45
 | 
 |  | 
 
            Philip Nunnegaard skrev:
 > Jeg havde dog engnag en ASP-side liggende på et webhotel, der konstant 
 > skiftede mellem dansk og amerikansk datoformat
 Det er da også for sindssygt.
 -- 
 Bertel
http://bertel.lundhansen.dk/       FIDUSO: http://fiduso.dk/ |  |  | 
 |  |