Maison > Questions et réponses > le corps du texte
J'ai un formulaire de recherche et le bouton Soumettre ressemble à ceci :
<input type="submit" name="search_submit" value="Go"/>
J'utilise le php suivant pour gérer ce formulaire :
if (isset($_GET['search_submit'])) { do blah }
Fonctionne bien. Mais mon URL contient alors &search_submit=Go. Je ne veux pas que cela apparaisse.
Je sais que pour résoudre ce problème, je dois supprimer l'attribut name de la ligne de saisie du formulaire.
Mais mon php ne fonctionne plus et je ne sais pas comment le modifier pour gérer le formulaire. J'ai essayé de le changer en :
if (isset($_GET['submit']))
et
if (isset($_GET['Go']))
Mais ils ne fonctionnent pas non plus. Ce serait formidable si quelqu'un pouvait m'aider à répondre à cette question.
P粉4641130782024-02-04 15:15:35
Si vous ne souhaitez pas URL
中显示字符串,你可以使用POST
方法。 GET
和 POST
Les principales différences entre
Obtenez
:Publié
:Exemple de code :
🎜if (isset($_POST["search_submit"])) { do blah }
P粉9564410542024-02-04 12:59:48
Vous ne pouvez pas supprimer le nom d'un élément d'entrée car PHP ne sait pas quelle valeur rechercher. Si vous souhaitez masquer complètement la chaîne derrière l'URL, utilisez la méthode request POST GET
:
Votre PHP utilisera les éléments suivants :
$_POST['search_submit']; // Instead of $_GET['search_submit'];
Une bonne réponse sur quand utiliser GET et POST peut être trouvée ici.
EDIT : Si vous ne voulez tout simplement pas que le bouton apparaisse dans l'URL, mais que tout le reste devrait toujours être là (d'après votre commentaire), vous pouvez simplement supprimer à la fois la valeur et le nom du bouton de soumission.
Vous pouvez rechercher d'autres valeurs au lieu de chercher celle à définir search_submit
:
if (isset($_GET['username'], $_GET['password'])) { // Do your stuff here }