Bonjour à tous,
pour gérer un site multilangue, j'ai décidé de rentrer tout mon contenu dans une base Mysql. Celle-ci contient deux table:
1-La table "table_word", qui contient tout les mots, ayant la structure suivante:
Champ - type - exemple
L1 - VARCHAR(64) PRIMARY KEY - Bienvenue (ou) Valider (etc...)
L2 - VARCHAR(64) - Welcome (ou) Valid (etc...)
Cette table est interrogée utilisant la fonction suivante:
Ainsi, la fonction cherche le mot que j'ai tapé en FR dans la colonne L1 puis renvoi le mot de la colone L2 si $language=2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function word($word) { if ($GLOBALS["language"]!=1) // Si la langue choisie n'est pas la langue par défaut { $query="SELECT L".intval($GLOBALS["language"])." FROM table_word WHERE LOWER(L1)=LOWER('".addslashes($word)."') "; //echo $query; $result= mysql_query($query) or die (mysql_errno($link)." - ".mysql_error()." : <br/>\n".$sql); $line= mysql_fetch_array($result) ; if($line == false) return $word; $Lword=$line[0]; return $Lword; // On renvoie le mot traduit } return $word; // Sinon, on renvoie le mot tel quel }
Maintenant j'ai une autre table "table_sentence" qui contient les textes et ayant la structure suivante:
Champ - type - exemple
"id" - INT(4) autoincrement clé primaire - 1
"L1" - TEXT - merci par avance de bien vouloir m'aider !!
"L2" - TEXT - Thanks a lot in advance for help me !
Le problème que j'ai est que je n'arrive pas en transformer la première fonction pour qu'elle fonctionne avec cette deuxième table.
En effet la fonction sentence($id) doit trouver l'id puis renvoyer la colonne L1 ou L2 mais pas renvoyer l'id! (ce qui est la seule chose que j'ai pu réussir à lui faire faire !! ou même renvoyer L2 systématiquement...)
Merci par avance à tous.
Mathieu.
Partager