Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1103 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  probleme de passage de parametre avec accent.

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme de passage de parametre avec accent.

n°1756958
johnson950
Posté le 08-07-2008 à 16:24:54  profilanswer
 

Bonjour,
 
Voici deux petits scripts tout simple qui fonctionne sous Easy PHP (windows)
 

Code :
  1. <form name="form1" method="post" action="test3.php">
  2.   <select name="test" size="1">
  3.     <option>f&eacute;vrier</option>
  4.   </select>
  5.   <input type="submit" name="Submit" value="Envoyer">
  6. </form>


 
ensuite mon but est de récupérer la valeur "février" sur test3.php :
 

Code :
  1. <?php
  2. $mois = $_POST['test'];
  3. echo $mois;
  4. if($mois == "février" ){
  5. echo "ok";
  6. }
  7. if($mois == "f&eacute;vrier" ){
  8. echo "ok1";
  9. }
  10. if($mois == "fevrier" ){
  11. echo "ok2";
  12. }
  13. ?>


 
Lorsque je stocke ces deux petits fichiers sous easy php j'obtiens : févrierok
 
Alors que quand j'insère celui ci sous le serveur Apache qui se trouve sur une machine linux fedora 8, j'obtiens uniquement février
Il ne rentre dans aucune des boucles je ne comprend pas pourquoi...
 
Avez vous une solution ?

mood
Publicité
Posté le 08-07-2008 à 16:24:54  profilanswer
 

n°1756975
guiguich
Posté le 08-07-2008 à 16:51:35  profilanswer
 

<?php
$mois = $_POST['test'];
echo $mois;
if($mois == "février" ){
echo "ok";
}
if($mois == "f&eacute;vrier" ){
echo "ok1";
}
if($mois == "fevrier" ){
echo "ok2";
}
?>
 
test ça pour voir si ça fonctionne avec cet façon de coder.
 
<?php
$mois = $_POST['test'];
if($mois == "février" ){
echo $mois."ok";
}
elseif($mois == "f&eacute;vrier" ){
echo $mois."ok1";
}
elseif($mois == "fevrier" ){
echo $mois."ok2";
}
else{
echo $mois;
}
?>


Message édité par guiguich le 08-07-2008 à 16:53:33
n°1756981
johnson950
Posté le 08-07-2008 à 17:04:11  profilanswer
 

Merci de ta réponse,
J'ai testé et j'obtiens la même chose.

n°1757037
Profil sup​primé
Posté le 08-07-2008 à 18:12:52  answer
 

johnson950 a écrit :

Bonjour,
 
Voici deux petits scripts tout simple qui fonctionne sous Easy PHP (windows)
 

Code :
  1. <form name="form1" method="post" action="test3.php">
  2.   <select name="test" size="1">
  3.     <option>f&eacute;vrier</option>
  4.   </select>
  5.   <input type="submit" name="Submit" value="Envoyer">
  6. </form>


 
ensuite mon but est de récupérer la valeur "février" sur test3.php :
 

Code :
  1. <?php
  2. $mois = $_POST['test'];
  3. echo $mois;
  4. if($mois == "février" ){
  5. echo "ok";
  6. }
  7. if($mois == "f&eacute;vrier" ){
  8. echo "ok1";
  9. }
  10. if($mois == "fevrier" ){
  11. echo "ok2";
  12. }
  13. ?>


 
Lorsque je stocke ces deux petits fichiers sous easy php j'obtiens : févrierok
 
Alors que quand j'insère celui ci sous le serveur Apache qui se trouve sur une machine linux fedora 8, j'obtiens uniquement février
Il ne rentre dans aucune des boucles je ne comprend pas pourquoi...
 
Avez vous une solution ?


 
 [:mlc2]  
 
Normal, parce que ton code affiche le mois transmis par POST et teste si c'est février (dans ce cas il affiche ok) , f&eacute;vrier (dans ce cas il affiche ok1) et fevrier (dans ce cas il affiche ok2).
Vire donc les echo "ok";
Et le mois est contenu dans la variable $_POST['test']


Message édité par Profil supprimé le 08-07-2008 à 18:17:20
n°1757193
johnson950
Posté le 09-07-2008 à 09:13:15  profilanswer
 

Bonjour,
 
merci de ta réponse!
Cependant, je pense que je me suis mal exprimé, mon but est bien de récupérer (ceci est effectué avec la méthode POST) puis je dois savoir qu'elle est cette données pour ensuite récuperer le nombre de jours de ce mois.
Or je récupère bien "février" mais ensuite pas moyen de rentrer dans une de ces boucles pour savoir si ce que je récupere est correct.

n°1757204
johnson950
Posté le 09-07-2008 à 09:33:55  profilanswer
 

Voici mon code en entier avec le charset :
 

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  5. <title>Document sans titre</title>
  6. </head>
  7. <body>
  8. <form name="form1" method="post" action="test3.php">
  9.   <select name="test" size="1">
  10.     <option value="f&eacute;vrier">f&eacute;vrier</option>
  11.   </select>
  12.   <input type="submit" name="Submit" value="Envoyer">
  13. </form>
  14. </body>
  15. </html>


 
et le second :

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  5. <title>Document sans titre</title>
  6. </head>
  7. <body>
  8. <?php
  9. $mois = $_POST['test'];
  10. if($mois == "février" ){
  11. echo $mois."ok";
  12. }
  13. elseif($mois == "f&eacute;vrier" ){
  14. echo $mois."ok1";
  15. }
  16. elseif($mois == "fevrier" ){
  17. echo $mois."ok2";
  18. }
  19. else{
  20. echo $mois;
  21. }
  22. ?>
  23. </body>
  24. </html>

n°1757216
johnson950
Posté le 09-07-2008 à 10:27:49  profilanswer
 

Bonjour,
 
Alors j'ai peut etre trouvé une solution (bricolage)
 
Sur test3.php, lorsque je récupere la valeur $mois :
 

Code :
  1. $mois = $_POST['test'];


 
je le remplace par :

Code :
  1. $mois = utf8_decode($_POST['test']);


 
lorsque je fais un echo du résultat je me retrouve avec un losange à la place du "é" mais ceci me fait rentrer dans la premiere boucle.
J'obtiens donc "f vrierok"
A la place de l'espace vous ajoutez un losange.


Message édité par johnson950 le 09-07-2008 à 10:28:12
n°1757504
Profil sup​primé
Posté le 09-07-2008 à 19:05:23  answer
 

alors tu remplaces ton if par :
if($mois == utf_encode("février" ) ){


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  probleme de passage de parametre avec accent.

 

Sujets relatifs
probleme de conenxion a phpmyadminprobleme menu deroulant IE/firefox
problème flash/actionscriptProbleme VBA
Problème de daterequete à problème
[SQL] problème requêteProblème avec des chaînes en hexa
MYSQLADMIN : problème de connexionProbleme Mise en page HTML et CSS
Plus de sujets relatifs à : probleme de passage de parametre avec accent.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR