par
phibad » 03 sept. 2018, 23:48
Mais maintenant pourquoi ma variable de session n'arrive pas sur la page suivante ?
Elle commence par <?php session_start();
La variable de session de la secrétaire (phibad) passe normalement, mais pas la variable de session du membre (idmembrechoisi) dont elle veut modifier les coordonnées.
Le var dump placé en début de la deuxième page répond : array(2) { ["pseudo"]=> string(6) "phibad" ["idmembrechoisi"]=> string(0) "" }
Voici le code :
Code : Tout sélectionner
<?php session_start();
//ini_set ('session.bug_compat_42', 0);
//ini_set ('session.bug_compat_warn', 0);
$pseudo =isset($_SESSION['pseudo']) ?$_SESSION['pseudo']:"";
$mp =isset($_SESSION['mp']) ?$_SESSION['mp']:"";
$pseudo =isset($_POST['pseudo']) ?$_POST['pseudo']:"";
$mp =isset($_POST['mp']) ?$_POST['mp']:"";
$nom =isset($_POST['nom']) ?$_POST['nom']:"";
$prenom =isset($_POST['prenom']) ?$_POST['prenom']:"";
$nele =isset($_POST['nele']) ?$_POST['nele']:"";
$sexe =isset($_POST['sexe']) ?$_POST['sexe']:"";
$parentM =isset($_POST['parentM']) ?$_POST['parentM']:"";
$parentnom =isset($_POST['parentnom']) ?$_POST['parentnom']:"";
$parentprenom =isset($_POST['parentprenom']) ?$_POST['parentprenom']:"";
$email =isset($_POST['email']) ?$_POST['email']:"";
$idmembrechoisi= isset($_SESSION['idmembre'])?$_SESSION['idmembre']:"";
$idcourant= isset($_SESSION['idcourant'])?$_SESSION['idcourant']:"";
$_SESSION['idmembrechoisi']= isset($_SESSION['idmembrechoisi'])?$_SESSION['idmembrechoisi']:"";
$submit=isset($_POST['submit'])?$_POST['submit']:"";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>secrétariat</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rel="StyleSheet" href="style2.css" type="text/css">
</head>
<body bgcolor="#FFFFFF">
<?php
include("bandeauhaut2.php");
include ("fonction.php");
include ("bonjour3.php");
var_dump($_SESSION);
if($submit!=''){
?>
<form method="POST" action="secraff1membre2.php ">
<?php
$req= $bdd->prepare('SELECT * FROM membres WHERE idmembre=:idmembrechoisi') ;
$req->execute(array('idmembrechoisi'=>$_SESSION['idmembrechoisi']));
while ($donnees=$req->fetch()){
//password_verify($_POST['mp'], $donnees['mp']);
echo (" <h1>".$donnees['prenom']." ".$donnees['nom']." n°".$donnees['idmembre']." pseudo : ".$donnees['pseudo']."</h1>");
?>
<p>idmembre </p>
<input type="text" value= "<?php echo $donnees['idmembre']; ?>" name="idmembre" >
<p>Pseudo </p>
<input type="text" value= "<?php echo $donnees['pseudo']; ?>" name="pseudo" >
<p>Nom </p>
<input type="text" value= "<?php echo $donnees['nom']; ?>" name="nom">
<p>Prénom </p>
<input type="text" value = "<?php echo $donnees['prenom']; ?>" name="prenom">
<p>Date de naissance (aaaa-mm-jj)</p>
<input type="text" value = "<?php echo $donnees['nele']; ?>" name="nele">
(...)
<br /><br />
<input type="submit" name="submit" value="Enregistrer les modifications" class="submit">
<br /><br />
<br /><p><a href="indextsr6.php">Retour au menu</a></p>
</form>
<?php
}
else{
$req=$bdd->prepare('UPDATE floritaimembres SET nom=:nom, prenom=:prenom, nele=:nele,sexe=:sexe,
parentM=:parentM, parentnom=:parentnom,parentprenom=:parentprenom, email=:email,
numrue=:numrue, cp=:cp, ville=:ville, tel1=:tel1,
tel2=:tel2, licence=:licence WHERE idmembre=:idmembrechoisi');
$req->execute(array('nom'=>$nom, 'prenom'=>$prenom, 'nele'=>$nele,'sexe'=>$sexe,
'parentM'=>$parentM, 'parentnom'=>$parentnom,'parentprenom'=>$parentprenom, 'email'=>$email,
'numrue'=>$numrue, 'cp'=>$cp, 'ville'=>$ville, 'tel1'=>$tel1,
'tel2'=>$tel2, 'licence'=>$licence,'idmembrechoisi'=>$_SESSION['idmembrechoisi']));
}
?>
</table><br /><br />
<br /><a href="indextsr6.php">Retour </a></p>
</div>
<br />
</div>
</body>
</html>
[code][/code]Mais maintenant pourquoi ma variable de session n'arrive pas sur la page suivante ?
Elle commence par <?php session_start();
La variable de session de la secrétaire (phibad) passe normalement, mais pas la variable de session du membre (idmembrechoisi) dont elle veut modifier les coordonnées.
Le var dump placé en début de la deuxième page répond : array(2) { ["pseudo"]=> string(6) "phibad" ["idmembrechoisi"]=> string(0) "" }
Voici le code :
[code]<?php session_start();
//ini_set ('session.bug_compat_42', 0);
//ini_set ('session.bug_compat_warn', 0);
$pseudo =isset($_SESSION['pseudo']) ?$_SESSION['pseudo']:"";
$mp =isset($_SESSION['mp']) ?$_SESSION['mp']:"";
$pseudo =isset($_POST['pseudo']) ?$_POST['pseudo']:"";
$mp =isset($_POST['mp']) ?$_POST['mp']:"";
$nom =isset($_POST['nom']) ?$_POST['nom']:"";
$prenom =isset($_POST['prenom']) ?$_POST['prenom']:"";
$nele =isset($_POST['nele']) ?$_POST['nele']:"";
$sexe =isset($_POST['sexe']) ?$_POST['sexe']:"";
$parentM =isset($_POST['parentM']) ?$_POST['parentM']:"";
$parentnom =isset($_POST['parentnom']) ?$_POST['parentnom']:"";
$parentprenom =isset($_POST['parentprenom']) ?$_POST['parentprenom']:"";
$email =isset($_POST['email']) ?$_POST['email']:"";
$idmembrechoisi= isset($_SESSION['idmembre'])?$_SESSION['idmembre']:"";
$idcourant= isset($_SESSION['idcourant'])?$_SESSION['idcourant']:"";
$_SESSION['idmembrechoisi']= isset($_SESSION['idmembrechoisi'])?$_SESSION['idmembrechoisi']:"";
$submit=isset($_POST['submit'])?$_POST['submit']:"";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>secrétariat</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rel="StyleSheet" href="style2.css" type="text/css">
</head>
<body bgcolor="#FFFFFF">
<?php
include("bandeauhaut2.php");
include ("fonction.php");
include ("bonjour3.php");
var_dump($_SESSION);
if($submit!=''){
?>
<form method="POST" action="secraff1membre2.php ">
<?php
$req= $bdd->prepare('SELECT * FROM membres WHERE idmembre=:idmembrechoisi') ;
$req->execute(array('idmembrechoisi'=>$_SESSION['idmembrechoisi']));
while ($donnees=$req->fetch()){
//password_verify($_POST['mp'], $donnees['mp']);
echo (" <h1>".$donnees['prenom']." ".$donnees['nom']." n°".$donnees['idmembre']." pseudo : ".$donnees['pseudo']."</h1>");
?>
<p>idmembre </p>
<input type="text" value= "<?php echo $donnees['idmembre']; ?>" name="idmembre" >
<p>Pseudo </p>
<input type="text" value= "<?php echo $donnees['pseudo']; ?>" name="pseudo" >
<p>Nom </p>
<input type="text" value= "<?php echo $donnees['nom']; ?>" name="nom">
<p>Prénom </p>
<input type="text" value = "<?php echo $donnees['prenom']; ?>" name="prenom">
<p>Date de naissance (aaaa-mm-jj)</p>
<input type="text" value = "<?php echo $donnees['nele']; ?>" name="nele">
(...)
<br /><br />
<input type="submit" name="submit" value="Enregistrer les modifications" class="submit">
<br /><br />
<br /><p><a href="indextsr6.php">Retour au menu</a></p>
</form>
<?php
}
else{
$req=$bdd->prepare('UPDATE floritaimembres SET nom=:nom, prenom=:prenom, nele=:nele,sexe=:sexe,
parentM=:parentM, parentnom=:parentnom,parentprenom=:parentprenom, email=:email,
numrue=:numrue, cp=:cp, ville=:ville, tel1=:tel1,
tel2=:tel2, licence=:licence WHERE idmembre=:idmembrechoisi');
$req->execute(array('nom'=>$nom, 'prenom'=>$prenom, 'nele'=>$nele,'sexe'=>$sexe,
'parentM'=>$parentM, 'parentnom'=>$parentnom,'parentprenom'=>$parentprenom, 'email'=>$email,
'numrue'=>$numrue, 'cp'=>$cp, 'ville'=>$ville, 'tel1'=>$tel1,
'tel2'=>$tel2, 'licence'=>$licence,'idmembrechoisi'=>$_SESSION['idmembrechoisi']));
}
?>
</table><br /><br />
<br /><a href="indextsr6.php">Retour </a></p>
</div>
<br />
</div>
</body>
</html>[/code]