Ciao a tutti,
scrivo perchè avrei un problema con la funzione gettext di php.
Per scrupolo, prima di fare così tutto il sito, ho fatto una pagina di prova, tanto per vedere se funzionava su Altervista, e il risultato non è stato dei migliori...
L'errore che dà è:
Fatal error: Call to undefined function: bindtextdomain()
il che mi fa pensare che manchi una dll del tipo libintl-1.dll o che molto più semplicemente non sia stata settata nel file php.ini di Altervista la cartella dlls che la contiene.
Sul mio pc (Apache 1.3.29 + PHP 4.3.6 del 15 Aprile 2004 )la pagina gira tranquillamente e si comporta benissimo.
La pagina in questione è http://kongoji.altervista.org/Prova/hello.php
il codice della pagina è
e dovrebbe stampare "Ciao Mondo" se la lingua di default del browser è l'italiano, "Hello world" altrimenti.Codice PHP:
<?php
//guardo la lingua del browser e su quella decido in che lingua mostrare il messaggio all'utente
$pos=strpos($_SERVER["HTTP_ACCEPT_LANGUAGE"], "it");
if($pos==0){
putenv ("LC_ALL=it");
} else {
putenv ("LC_ALL=en");
}
// Specifico il nome del file [greetings.mo] e la cartella iniziale dove andarlo a prendere
bindtextdomain ("greetings", "./locale/");
// Scelgo il dominio
textdomain ("greetings");
//infine scrivo la stringa che poi verrà richiamata
echo _("Hello World");
?>
Ringrazio chiunque possa darmi una mano a risolvere il problema
Ciao