Choix du langage en php, Javascript ou autre ?

Résolu/Fermé
loulouking - 5 févr. 2014 à 02:12
 loulouking - 5 févr. 2014 à 19:10
Bonjour à tous, je suis novice et j'aimerai savoir comment réussir a créer une barre de langage qui répond aux instructions tel que : Anglais, français etc..

Pour l'instant j'ai inclus un dossier langue.php dans la page en question grace à :
<?php include("langues.php"); ?>

puis j'ai inséré dans langue.php le code suivant :

<body>
<FORM>
<SELECT name="langues" size="1">
<Option Francais
<Option Anglais
<form/>

<body/>
<?php

if ($_post['langues']=='Francais') {
location ('english.php');

}

else if ($_post['choix']=='choix2') {
location('english.php');
}



?>
Pourtant rien a y faire, même quand je fais le test sur MAMP, la barre de section du langage s'affiche sans suivre les redirecetions demandées...
Si quelqu'un pouvait m'aider ca serait vrmt sympa je suis bloqué dessus depuis pas mal de temps...

ps:Si vous me parlez d'autre langage que le html et php allez y doucement.. merci d'avance
A voir également:

7 réponses

honey22 Messages postés 119 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 3 juillet 2014 29
Modifié par honey22 le 5/02/2014 à 03:12
je n'arrive pas à poster ma réponse. test
0
honey22 Messages postés 119 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 3 juillet 2014 29
5 févr. 2014 à 03:12
Bonsoir,

pour commencer pense à fermer tes balises HTML (le select et les options) ainsi qu'à mettre les valeurs :
0
honey22 Messages postés 119 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 3 juillet 2014 29
5 févr. 2014 à 03:12
<?php
if(isset($_POST['langues'])){
if ($_POST['langues']=='français') {
header('Location: french.php');

}

else if ($_POST['langues']=='anglais') {
header('Location: english.php');
}
}


?>
<body>

<form action="test.php" method="post">
<SELECT name="langues" size="1">
<option value="français">Francais</option>
<option value="anglais">Anglais</option>
</select>
<input type="submit" value="OK">
<form/>

<body/>
0
honey22 Messages postés 119 Date d'inscription mardi 21 août 2012 Statut Membre Dernière intervention 3 juillet 2014 29
5 févr. 2014 à 03:14
ce code est contenu dans un fichier test.php (d'ou le action=test.php) et j'ai un fichier english.php qui contient "hello" et un fichier français.php qui contient "bonjour"
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour Honey22,

Merci beaucoup pour ta réponse, ton nouveau code a l'air beaucoup plus logique que le mien.. j'ai donc modifié mon code comme tu me l'as dis :

<body>
<FORM Action="test8.O."php method="post"> // test.8.O.php = la page ou la
selection du langage doit avoir lieu
<SELECT name="langues" size="1">
<Option value="Francais">Francais</option>
<Option value="English">English</option>
</select>
<form/>

<body/>
<?php
if(isset($_POST['langues'])){
if ($_post['langues']=='Francais') {
header ('location:test8.O.php');

}

else if ($_post['choix']=='choix2') {
header ('location:english.php');
}
}


?>

Mais ca ne marche toujours pas, c'est exactement pareil qu'avant quand je test en php sur MAMP......
0
animostab Messages postés 2829 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 11 novembre 2019 738
5 févr. 2014 à 14:16
bonjour

petite erreur

FORM Action="test8.O."php
au lieu de
FORM Action="test8.O.php"
0
Bonjour, merci encore pour cette correction j'ai maintenant un code du type :

<body>
<FORM Action="test8.O.php" method="post">
<SELECT name="langues" size="1">
<Option value="Francais">Francais</option>
<Option value="English">English</option>
</select>
<form/>

<body/>
<?php
if(isset($_POST['langues'])){
if ($_post['langues']=='Francais') {
header ('location:test8.0.php');

}

else if ($_post['choix']=='choix2') {
header ('location:english.php');
}
}


?>
Mais ca ne marche toujours pas....!!! Je commence à me demander si c'est pas le logiciel MAMP qui teste mal ma page php, qu'est vous en pensez ???
0
Avec MAMP vous avez desss serveurs dont Apache pour faire marcher PHP.
Soit ça marche soit ça marche pas(souvent comme ça en informatique. binaire).
Écrivez une simple page PHP:

<?php
echo ('Bonjour');
?>
Puis enregistrez là test.php à la racine du dossier WWW de MAMP.
Quand vous la faites fonctionner de votre serveur local(en indiquant localhost/test.php -surtout sans http ou www dans votre navigateur web) si celle ci affiche Bonjour c'est bon sinon vous n'avez pas le serveur de PHP activé ou c'est dans le mauvais dossier que vous avez placé votre fichier.
0
Merci pour ta réponse Waxtime , mais ca marche qd je vais sur http://localhost:8888/langues.php mais ca suit toujours pas les conditions php..... et juste cmt j'enregistre test.php "à la racine du dossier WWW "?

Merci pour toutes vos réponses
0
animostab Messages postés 2829 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 11 novembre 2019 738
Modifié par animostab le 5/02/2014 à 18:55
Ca ne vient pas du serveur

bon il y a aussi 2 erreurs dans ton formulaire

<FORM Action="test8.O.php" method="post">
<SELECT name="langues" size="1">
<Option value="Francais">Francais</option>
<Option value="English">English</option>
</select>
ici pas bouton submit
<form/> fermeture mal codée

voici le code correct

<FORM Action="test8.O.php" method="post">
<SELECT name="langues" size="1">
<Option value="Francais">Francais</option>
<Option value="English">English</option>
</select>
<input type="submit" value="OK">
</form>

et aussi erreurs dans le php

<?php
if(isset($_POST['langues'])){
if ($_post['langues']=='Francais') {
header ('location:test8.0.php');

}

else if ($_post['choix']=='choix2') {
header ('location:english.php');
}
}
?>
comment veux tu que ca marche 'choix' n'existe pas, le nom du select est 'langue'
pareil pour =='choix2' cette value n'existe pas, c'est 'anglais'



le code que t'as donné honney 22 est correct
si tu invente des trucs et transformant ce code cela ne va pas marcher
contente toi de copier ce code si tu ne comprends pas
dernier conseil : fait une page pour le francais qui n'est pas la page de test et change le header ('location: ....'); pour la page francais
0
Ok merci beaucoup, ca marche !!!! et encore désole pour mes erreurs d'étourderie, qd on est bloque longtemps sur un truc, de tps en tps on manque de recul !!! en tout cas merci bec!!
0