Support pour site multilang

Signaler
Messages postés
15
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
2 novembre 2010
-
Messages postés
15
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
2 novembre 2010
-
Bonjour,


J’aurais besoin d’aide sur plusieurs scripts sur php.


Le premier c’est le support multi-lang


Voice mon code :


conf_lang.php


<?php


$navlist = array (


"names" => array("English", "Fran&ccedil;ais", "Romana", "Espanol", "Italy", "Deutsch", "Belgique", "Hungry"),


"ico" => array("uk", "fr", "ro", "es", "it", "de", "be", "hu"),


"url" => array("UK", "FR", "RO", "ES", "IT", "DE", "BE", "HU")


);


$navcount = sizeof($navlist[ico]);


for ($i = 0; $i < $navcount; $i++)


{


if ($PHP_SELF == $navlist[url][$i])


{


echo (' [?language='.$navlist[url][$i].' ]&nbsp;');


}


else


{


echo (' [?language='.$navlist[url][$i].' ]&nbsp;');


}


}


?>



select_lang.php


<?


define('HTML_ROOT_PATH',"./");


$Lang_List=array("UK","FR","RO","ES","IT","DE","BE","HU");


if (isset($_GET['language'])&&(@in_array($_GET['language'],$Lang_List)))


{


define('LANGUAGE', $_GET['language']);


}


elseif (isset($_SESSION["Userlanguage"]))


{


define('LANGUAGE', $_SESSION["Userlanguage"]);


}


else


{


$Accept_Lang=explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);


reset($Accept_Lang);


while ( list($Index,$language)=@each($Accept_Lang))


{


if (eregi( "^(.+);q=([0-9.]*)$", $language , $Part))


{


$Accept_Lang[$Index]=$Part[2] . ';'.strtoupper($Part[1]);


}


else


{


$Accept_Lang[$Index]='1.0;'.strtoupper($Accept_Lang[$Index]);


}


}


arsort($Accept_Lang);


reset($Accept_Lang);


while (list(,$ALang)=@each($Accept_Lang) )


{


reset($Lang_List);


while ( list(, $language) = @each($Lang_List) )


{


if (strpos($ALang,$language)!=0)


{


define('LANGUAGE', $language);


break 2;


}


}


}


unset($Accept_Lang, $ALang,$language);


}


if (!defined('LANGUAGE'))


{


$StartUrl=$_SERVER["REQUEST_URL"].(preg_match("/\?/",$_SERVER["REQUEST_URL"])?"&":"?");




exit;


}


$_SESSION["Userlanguage"]=LANGUAGE;


define('HTML_LANG_PATH',HTML_ROOT_PATH . 'languages/lang_'. LANGUAGE .'/');


include(HTML_LANG_PATH."lang_main.php");


?>








index.php








<?


include("select_lang.php");


include(HTML_LANG_PATH."lang_main.php");


?>


<center>


< ?php $site_lang[‘LANG_SELECT’] ; ?>


</center>




Le problème c’est que je n’arrive pas à faire marche ce code.




Voila…


Merci d’avance si vous pouvez m’aider avec ceci.

6 réponses

Messages postés
1216
Date d'inscription
mardi 20 décembre 2005
Statut
Membre
Dernière intervention
18 octobre 2012
4
< ?php $site_lang[‘LANG_SELECT’] ; ?>

sans aller plus loin, ça, ça ne fait rien du tout ?
Messages postés
15
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
2 novembre 2010

Quelqu'un peut m'aider dans mon probleme SVP?
Merci
Messages postés
510
Date d'inscription
samedi 29 décembre 2001
Statut
Membre
Dernière intervention
23 mai 2008

Le conseil que je pourrais te donner est tout simplement de créer une fonction langue...
par exemple :

fichier lang.php

<HR>

<?php

function lang($lang) {

if ($lang=='fr') {
............
............
............
}

if ($lang='en') {
............
............
............
}

}
?>

<HR>

et ensuite dans ton fichier index.php :

<HR>
<?php

include('lang.php);

if (!empty($lang)) {
lang($lang);
}
else
{
lang('fr');
}

?>


----------------------
La lumière étant plus rapide que le son, un homme peu paraître brillant avant qu'il se mette a parler
-----------------
Messages postés
15
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
2 novembre 2010

Ce que je souhait faire c'est de configurer la langue de visiteur par les cookies.
Voice mon root:
images/flags/ avec les drapeaux
language/avec les directeur de lang (ex: FR/ ; IT/ ; ES/ ; ) /lang_main.php
index.php
conf_lang.php
select_lang.php
Messages postés
510
Date d'inscription
samedi 29 décembre 2001
Statut
Membre
Dernière intervention
23 mai 2008

heu, je ne gère pas trop les cookies, mais pas très compliqué, tu ouvre ton cookie tu lis les infos à l'interieur (pour avoir toutes les infos la dessus rends toi sur www.php.net) ensuite tu charge ta fonction un peu comme celle que je t'ai écrite et et tu entre en variable ce que tu as récupérer dans ton cookie ex :

lang($ta_variable);


----------------------
La lumière étant plus rapide que le son, un homme peu paraître brillant avant qu'il se mette a parler
-----------------
Messages postés
15
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
2 novembre 2010

D'appres toi c'est simple .. mais je suis novice sur php cookies et plus encore.. C'est d'ailleur pour cette reason que je souhait pouvoir obtenir de ta part un code rien qu'un example ..
Merci