Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Probleme avec un cookie et une redirection

1 réponse
Avatar
Yoda89
Ce code permet à l'utilisateur de choisir un nom dans
une liste déroulante. Lors de la validation avec le bouton, ue cookie est
créé puis
l'utilisateur est routé vers une autre page php. Malheureusement ça ne
marche pas.
Pouvez-vous me dire svp ce qui ne va pas.


<form method="POST" action="inscript(maselection.value)"
name="inscript_form">
<table>
<?php
function redir($url){
echo "<script>";
echo "window.location='$url';";
echo "</script>";
}
function inscript($choix){
setcookie("idx",$choix,time()+10);
redir("accueil.htm");
}
require_once("Connect.php");
require_once("_connexion.php");
$query = "Select num, nom, prenom From utilisateur";
$result = mysql_query($query);
echo "<td><select name=\"maselection\">\n";
while($obj = mysql_fetch_object($result)){
echo "<option value=\"$obj->num\">$obj->nom - $obj->prenom</option>\n";
}
echo "</select>\n";
?>
<input type="submit" value="Inscription">
</table>
</form>




Christophe


Webmaster de www.lavache.free.fr

1 réponse

Avatar
Redy Ramamonjisoa
Yoda89 wrote:

Ce code permet à l'utilisateur de choisir un nom dans
une liste déroulante. Lors de la validation avec le bouton, ue cookie est
créé puis
l'utilisateur est routé vers une autre page php. Malheureusement ça ne
marche pas.
Pouvez-vous me dire svp ce qui ne va pas.


<form method="POST" action="inscript(maselection.value)"

name="inscript_form"> > <table>
<?php
function redir($url){
echo "<script>";
echo "window.location='$url';";
echo "</script>";
}
function inscript($choix){
setcookie("idx",$choix,time()+10);
redir("accueil.htm");
}
require_once("Connect.php");
require_once("_connexion.php");
$query = "Select num, nom, prenom From utilisateur";
$result = mysql_query($query);
echo "<td><select name="maselection">n";
while($obj = mysql_fetch_object($result)){
echo "<option value="$obj->num">$obj->nom - $obj->prenom</option>n";
}
echo "</select>n";
?>
<input type="submit" value="Inscription">
</table>
</form>




Christophe


Webmaster de www.lavache.free.fr


Salut,
Il ne faut pas mélanger JavaScript (Execution Côté client) et PHP (Côté
Serveur). Les deux fonctions suivantes doivent être re-écrites en
JavaScript car c'est le navigateur du client qui l'execute et non pas le
serveur :

function redir($url){
echo "<script>";
echo "window.location='$url';";
echo "</script>";
}
function inscript($choix){
setcookie("idx",$choix,time()+10);
redir("accueil.htm");
}



Parcontre,
Si tu souhaites les executer du côté serveur, alors, il faudra modifier :
1// La valeur de 'action' de manière à pointer vers une autre page PHP

<form method="POST" action="inscript(maselection.value)"
name="inscript_form">


2// La page PHP pointée effectue la création du Cookie
function inscript($choix){
setcookie("idx",$choix,time()+10);
redir("accueil.htm");
}


et éventuellement une nouvelle redirection.