Remplacer eapce dans un form

Bonjour,

Je cherche désespérément comment remplacer les espaces dans un form

<form method="get" action="index" >
<input type="hidden" name="categorie" value="animaux.php" >
<input type="text" size=22 name="cat" placeholder="animaux" >
<button type="submit" >Recherche</button>
</form>

si je rentre des espaces dans le champ de recherche, il se transforme en + dans l'url

les poneys => les+poneys

je voudrais que l'espace se transforme en slash / => les/poneys

Merci pour votre aide

4 réponses

  1. Avec ton code, on arrive, après validation, sur une page de ce type:
    index?categorie=animaux.php&cat=a+b+c 

    Déjà, dans action="" tu as oublié l'extension de ta page. index.php je suppose.
    Ensuite, tu ne peux pas modifier directement l'url et y supprimer des "+".
    Tu peux toutefois le faire au moment du traitement comme l'a proposé Lord Zero.

    if(isset($_POST['cat']))
       {
       $cat = str_replace("+", "/", $_GET['cat']);
       }
    1. tu peux mettre le code de ta page de traitement stp?
      1. $input =$_GET['cat'];

        je suppose
    2. Bonjour Lord,

      Je connais cette fonction php str_replace, mais je ne sais pas comment la placer

      à quel moment et comment déclarer $input ?
      1. Hello !

        Peut être que str_replace() t'aiderait à résoudre ton problème.

        <?php   
        echo str_replace("bonbons","pommes","Manger des bonbons");   
        ?>

        Ce qui donne :
        Manger des pommes

        Dans ton cas :
        str_replace("+","/",$input);
        $input étant le texte recherché.

        Développeur VB6, VBS, VBA, VB.NET, C#, HTML, PHP, JAVASCRIPT, SQL.