Aller au contenu

changement des images avec choix de la langue


Sujets conseillés

Posté

Salut les gars !

Sur mon site j'ai la proposition de changer la langues en cliquant sur les drapeux.

Comment peut on faire pour changer les images dans le header avec chois de la langues?

Merci d'avance

Posté

Kikou

Un truc dans ce genre te donneras peut etre une idée

switch(VARIABLE_LANGUE)

{

case "francais":

print("<img src=\"drapo-french.jpg\" alt=\"\"/>");

break;

case "anglais":

print("<img src=\"drapo-anglais.jpg\" alt=\"\"/>");

break;

default:

print("<img src=\"drapo-french.jpg\" alt=\"\"/>");

break;

}

Posté (modifié)

Salut et Merci pour ta reponse !

J'ai pas compris comment faire?!

Moi j'ai un petit menu dans le fichier menu.php en haut de mon site(header)

avec seulement une image:

<img src="menu.gif" width=777 height=108 border=0 usemap="#index_Map">

Et dans ma page index.php

j'ai donc 2 images de choix de la langues:

<input name="submit12" type="image" img src="images/english.gif" alt="english" width="18" height="12" value="fr|en" >

et

<input name="submit13" type="image" img src="images/deuch.gif" alt="german" width="18" height="12" value="fr|de" >

En cliquant ça me traduit ma page avec google.

Alors comment faire pour que l'image du menu en haut change selon la langues choisié?

Merci encore!

Modifié par cccp
Posté

Bonjour,

Votre probleme est de choisir (et de connaitre) la langue a un instant T...

Option1 :

monsite.com/fr/*

monsite.com/de/*

monsite.com/en/*

avec tout vos fichiers derriere la langue...vous savez toujours dans quelle langue vous être (voir variable $_SERVER dans phpinfo() ).

Option 2 :

Vous lisez la langue de l'utlisateur et la stocker dans $_SESSION[LANGUE]="fr";

Tant que session ="fr" vous affichez fr

Si clic sur Drapeau en alors $_SESSION[LANGUE]="en";

Trop facile....

Avec un bon MODREWRITE on peut faire des merveilles ;-)

Bon dev

Posté (modifié)
Trop facile....

<{POST_SNAPBACK}>

Ce genre de remarque remet bien les néophytes en place, mais en même temps ça n'aide personne à part toi...

Concernant l'utilisation d'une variable de session ($_SESSION) cela peut être un bon moyen dans le cadre d'un système utilisant DÉJA les session mais difficilement justifiable pour un simple système de langue. Pour avoir un code portable il faudrait passer l'ID de session entre les pages...et dans ce cas pourquoi ne pas simplement passer une variable genre ?lang=fr ... (et pourant c'est simple et logique hein Verticrawl ?)

Le rewritting te servira beaucoup dans le référencement de tes pages dans toutes les langues...

Il faut encore penser à toujours avoir une langue si l'utilisateur ne la précise pas, personnellement je procède ainsi :

$settings['allowed_lang'] = array("Français"=>"fr","English"=>"en");
$currentlang = (isset($_GET['lang']) && in_array($_GET['lang'],$settings['allowed_lang'])?strtolower($_GET['lang']):"fr");

Et de ceci découle lgiquement le préfixage our le suffixage de tes image avec ce code à deux lettres. Donc pour afficher une image tu procède ainsi :

<img src="nomimage-<?php echo $currentlang; ?>.jpg" alt="Description de l'image" />

Modifié par TheRec
Posté

Merci ! :blink:

Mais ou j'inserre ça?

$settings['allowed_lang'] = array("Français"=>"fr","English"=>"en");
$currentlang = (isset($_GET['lang']) && in_array($_GET['lang'],$settings['allowed_lang'])?strtolower($_GET['lang']):"fr");

j'ai pas compris?

  • 5 months later...
Posté
Ce genre de remarque remet bien les néophytes en place, mais en même temps ça n'aide personne à part toi...

Concernant l'utilisation d'une variable de session ($_SESSION) cela peut être un bon moyen dans le cadre d'un système utilisant DÉJA les session mais difficilement justifiable pour un simple système de langue. Pour avoir un code portable il faudrait passer l'ID de session entre les pages...et dans ce cas pourquoi ne pas simplement passer une variable genre ?lang=fr ... (et pourant c'est simple et logique hein Verticrawl ?)

Le rewritting te servira beaucoup dans le référencement de tes pages dans toutes les langues...

Il faut encore penser à toujours avoir une langue si l'utilisateur ne la précise pas, personnellement je procède ainsi :

$settings['allowed_lang'] = array("Français"=>"fr","English"=>"en");
$currentlang = (isset($_GET['lang']) && in_array($_GET['lang'],$settings['allowed_lang'])?strtolower($_GET['lang']):"fr");

Et de ceci découle lgiquement le préfixage our le suffixage de tes image avec ce code à deux lettres. Donc pour afficher une image tu procède ainsi :

<img src="nomimage-<?php echo $currentlang; ?>.jpg" alt="Description de l'image" />

<{POST_SNAPBACK}>

Votre demarche est fausse puisque la langue (dans votre exemple) doit etre determine a l'avance (internaute ou navigateur)....Hors, ceci doit etre une variable de session qui se balade de page en page. C'est donc une donnee qui est determinee et transmise entre pages..

Developpe en ajoutant un "?lang=truc" releve de la tres mauvaise idée puisque l'internaute peux choisir "lang=ru" dans l'url et vous plantez votre site... Vous devez avoir la maitrise de la langue et donc choisir une langue par defaut.

Relisez ce que j'ai ecris et vous verez que chaque element a son importance. il et clair que le multi-langue n'est pas a la porte du debutant [cqfd]. methodologiquement cela vous permet aussi (avec un meme script) d'afficher X langues sans modifier 1 bout de code. pour cela voir www.123emploi.com

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...