Page 1 sur 1

problème de redirection en php

Posté : 22 févr. 2023, 22:05
par emilie14
Bonsoir les pros

mon souci est quand je sélectionne un choix depuis une liste déroulante il m'envoie toujours sur la première page : pointagesA1.php....... peut importe le choix que je fais il me renvoie toujours sur cette dernière
prière de m'aider à résoudre ce problème est merci à vous infiniment :priere: :priere: :priere: :priere:

code page principale : choix.php

Code : Tout sélectionner

<form action="item-search.php"> <div class="input-group"> <input class="awesomplete" name="items" onchange="this.form.submit()" list = "mylist" placeholder = "Choisir Salle..."/> <datalist id = "mylist" name="items"> <option value="A1">Salle TP A1</option> <option value="A2">Salle TP A2</option> <option value="A3">Salle TP A3</option> </datalist>
Code item-search.php est le suivant :

Code : Tout sélectionner

<?php $items = $_POST['items']; if ($items = 'A1') { header("Location: pointagesA1.php"); } elseif ($items = 'A2') { header("Location: pointagesA2.php"); } elseif ($items = 'A3') { header("Location: pointagesA3.php"); } ?>

Re: problème de redirection en php

Posté : 23 févr. 2023, 00:25
par ynx
Bonsoir,

attention à ne pas confondre les opérateurs d'affectation et les opérateurs de comparaison ;)
https://www.php.net/manual/fr/language.operators.php

Un bon réflexe, c'est de mettre la variable php à droite dans ta comparaison : PHP déclenchera une erreur si tu oublies un =
if ('A1' == $items) {
	header("Location: pointagesA1.php");
}
elseif ('A2' = $items) { // syntax error, unexpected token "="
	header("Location: pointagesA2.php");
}

Re: problème de redirection en php

Posté : 23 févr. 2023, 00:34
par @rthur
Et un autre bon réflexe, c'est de toujours faire suivre un header("Location:..."); d'un die(); pour être sûr que rien d'autre ne sera renvoyé après que l'on ait demandé une redirection, sinon certains navigateurs peuvent avoir des fonctionnements erratiques

Re: problème de redirection en php

Posté : 24 févr. 2023, 02:21
par emilie14
Et un autre bon réflexe, c'est de toujours faire suivre un header("Location:..."); d'un die(); pour être sûr que rien d'autre ne sera renvoyé après que l'on ait demandé une redirection, sinon certains navigateurs peuvent avoir des fonctionnements erratiques
mercii

Re: problème de redirection en php

Posté : 24 févr. 2023, 02:22
par emilie14
Bonsoir,

attention à ne pas confondre les opérateurs d'affectation et les opérateurs de comparaison ;)
https://www.php.net/manual/fr/language.operators.php

Un bon réflexe, c'est de mettre la variable php à droite dans ta comparaison : PHP déclenchera une erreur si tu oublies un =
if ('A1' == $items) {
	header("Location: pointagesA1.php");
}
elseif ('A2' = $items) { // syntax error, unexpected token "="
	header("Location: pointagesA2.php");
}

merci