variable $_SESSION au rechargement
Bonsoir à tous;
Je vais tenter d'être le plus clair possible.
Je réalise un site pour une galerie. Je suis actuellement sur la partie administration et je rencontre un probleme de variable qui disparait ou qui est remise a zero.
Voici mon code (que j'explique par la suite).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182
| <?php
$_SESSION['mdp'] = $_POST['mdp'];
$_SESSION['login'] = $_POST['login'];
if (isset($_SESSION['mdp']) and isset($_SESSION['login'])){
$mdp = $_POST['mdp'];
$login = $_POST['login'];
}
else{
$_SESSION['mdp'] = "";
$_SESSION['login'] = "";
}
if (($_SESSION['mdp'] == "coucou") and ($_SESSION['login'] == "galerie")){ // login = galerie mot de passe = coucou
?>
<?php
$text='
<?xml version="1.0" ?>
<album
showbuttons="'.$_GET['bouton'].'"
showtitles="'.$_GET['titre'].'"
randomstart="'.$_GET['random'].'"
timer="'.$_GET['vitesse_transition'].'"
aligntitles="'.$_GET['position'].'"
alignbuttons="'.$_GET['position'].'"
transition="'.$_GET['transition'].'"
speed="20"
>
<img src="_diapo/6.jpg" />
<img src="_diapo/7.jpg" />
<img src="_diapo/8jpg" />
<img src="_diapo/9.jpg" />
<img src="_diapo/10.jpg" />
</album>';
$fichierXML = "_xml/dewslider.xml";
$openfichier = fopen($fichierXML,"r+");
fputs($openfichier,$text);
fclose($openfichier);
?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Galerie</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="_css/admin.css" />
</head>
<body>
<div id="conteneur">
<div id="title">Administration du site : Galerie </div>
<div id="conf_accueil">
<div class="titre_rubrique">Configuration diaporama accueil</div>
<form action="admin.php" method="get">
<table align="center">
<tr>
<td>Afficher les Boutons de contrôle</td>
<td>
<select name="bouton">
<option value="yes">oui</option>
<option value="no" selected="selected">non</option>
</select>
</td>
</tr>
<tr>
<td>Afficher le titre des photos</td>
<td>
<select name="titre">
<option value="yes">oui</option>
<option value="no" selected="selected">non</option>
</select>
</td>
</tr>
<tr>
<td>Position des boutons et du titre des photos</td>
<td>
<select name="position">
<option value="top">Haut</option>
<option value="bottom" selected="selected">bas</option>
</select>
</td>
</tr>
<tr>
<td>choissisez l'effet de transition</td>
<td>
<select name="transition">
<option value="fade" selected="selected">fade</option>
<option value="slide">slide</option>
<option value="push">push</option>
<option value="pop">pop</option>
<option value="warp">warp</option>
<option value="blur">blur</option>
</select>
</td>
</tr>
<tr>
<td>Vitesse de transistion (ms)</td>
<td>
<select name="vitesse_transition">
<option value="1">1</option>
<option value="2">1</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5" selected="selected">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
</td>
</tr>
<tr>
<td>Démarrage aléatoire</td>
<td>
<select name="random">
<option value="yes">Oui</option>
<option value="no">Non</option>
</select>
</td>
</tr>
<tr>
<td>Valider les options</td>
<td><input type="submit" value="Valider" /></td>
</tr>
<tr align="center">
<td rowspan="8" colspan="2">
<object type="application/x-shockwave-flash" data="_flash/dewslider.swf?xml=_xml/dewslider.wml" width="340" height="227">
<param name="movie" value="_flash/dewslider.swf?xml=_xml/dewslider.xml" />
</object>
</td>
</tr>
</table>
</form>
</div>
<div id="text_accueil">
<div class="titre_rubrique">Texte page accueil</div>
<form action="" method="post">
<textarea name="text_acceuil" />
<?php
include ('xxxxx.php');
$connect = mysql_connect("$mysql_host","$mysql_login","$mysql_pass") or die ('conection impossible a la base');
mysql_select_db("$mysql_db", $connect) or die ('Selection impossible de la table');
$sql = 'SELECT * FROM generale';
$back = mysql_query($sql);
while ($data = mysql_fetch_array($back)) {
$text= $data['text_accueil'];
echo $text;
}
?>
</textarea>
<input type="submit" value="Envoyer" align="right"/>
</form>
</div>
</div>
</div>
</body>
</html>
<?php
}
else // le mot de passe n'est pas bon
{
?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Administration du site : </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="_css/admin.css" />
</head>
<body>
<div id="title">Administration du site : Galerie </div>
<div id="auth">
<form action="admin.php" method="post">
<input type="text" name="login" value="utilisateur"/>
<input type="text" name="mdp" value="password"/>
<input type="submit" value="Valider" />
</form>
</div>
</body>
</html>
<?php
}
?> |
Explication:
la zone d'administration ce fait a partir de la page admin.php (le code ci dessu)
lorsque cette page est appelé elle demande le mot de passe, si celui-ci est bon, elle affiche les différents parametres pouvant être modifier, si le mot de passe ne l'ai pas elle redemande de s'identifier.
Une fois identifier, on tripote les différentes option du site et on valide...:(
(le probleme est la)
Je r'appel la même page admin lors de cette validation qui effectuer les opération, mais au lieu de retomber sur les différentes options, je tombe sur la zone de login. Voila.
Je souhaiterai savoir comment faire pour une fois l'action valider je puisse ne pas être obligé de me ré-identifier.
j'espère avoir été claire,:? Si ce n'est pas le cas je donnerai toute les infos nécessaire.
Je sèche complètement sur ce truc
Merci a vous:salut:
RE: Problème de variable $_SESSION au rechargement
Bonjour,;)
Comment ne pas y avoir pensé plus tôt!!!:aie:
On test les variables au démarrage tout simplement.
Merci merci beaucoup smiff. :king:
PS: Le code que je modifie peut certainement intéresser du monde, il s'agit d'un diaporama photo "Dewslider", très simple à mettre en œuvre et possédant pas mal de paramètre. N'hesitez pas à taper dans mon code si celui-ci vous intéresse ou à me demander (Mais je pense que vu la différence de niveau, il n'y aura pas de probleme) .:king:
Merci encore.:yaisse2: