Bonjour à tous,
Voila je suis débutant en php (à peine quelques jours, et plus généralement débutant en developpement...) et je rencontre un pb sur un formulaire PHP dont voici le code:
Voici ce que je veux faire:
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
18 <?php $sql="SELECT nom FROM formation"; $res_sql=mysql_query($sql); $nbrelig=mysql_num_rows($res_sql); print("<h1><p class=marge>"); print("<form action=recherche_partition.php method=\"GET\">"); print("- Mot clé dans le nom de la partition:<br><br><input type=text name=\"motcle\"><br><br>"); print("- Type de formation:<br><br><select name=\"formation\">"); for ($i=1;$i<=$nbrelig;$i++) { $tabres=mysql_fetch_array($res_sql); $nomformation=($tabres['nom']); print("<option value=$nomformation>$nomformation</option>"); } print("</select><br><br><input type=submit value=OK>"); ?>
L'utilisateur doit taper un mot clé dans une zone de texte puis selectionner une formation dans celles proposées dans la liste déroulante.
Les différents noms de formation sont récupérés dans une table MySQL.
Les choix de l'utilisateur sont récupérés et passés en variables php dans la page recherche_partition.php.
Tout cela fonctionne bien.
Le pb est que si dans le nom de formation, j'ai un espace, il n'y a que le 1er mot qui passe en variable. Par contre, si j'insère des espaces dans le mot clé, la chaine de caractères est bien encodée à la volée avec des + à la place des espaces.
Comment faire pour encoder les variables passées par la liste déroulante ????
J'ai essayé de jouer avec la fonction urlencode et urldecode mais sans succès !
Je suis dessus depuis un petit moment! J'ai écumé les différents forum sans succès...
Merci bcp de votre aide !
Partager