Bonjour,
Je suis en train de travailler sur un site dont certains menus sont cachés tant que l'on est pas logué en tant qu'administrateur.
Tout fonctionne correctement lorsque je travail en locale (les menus s'affichent bien une fois logué) mais quand j'ai uploader mon site en ligne, ils ne s'affichent plus une fois enregistrer.
Pour que les menus s'affichent, je crée une variable de session si l'identifiant et le pass sont juste, ensuite je teste dans les page si la variable de session est présente ou non pour les afficher.
Voici mon code de login :
Et mon code pour l'affichage :
Personnellement, je pense que le problème vient des variable de session qui ne se créent pas ou auquelles je n'ai pas accès en ligne...
Je suis en train de travailler sur un site dont certains menus sont cachés tant que l'on est pas logué en tant qu'administrateur.
Tout fonctionne correctement lorsque je travail en locale (les menus s'affichent bien une fois logué) mais quand j'ai uploader mon site en ligne, ils ne s'affichent plus une fois enregistrer.
Pour que les menus s'affichent, je crée une variable de session si l'identifiant et le pass sont juste, ensuite je teste dans les page si la variable de session est présente ou non pour les afficher.
Voici mon code de login :
<?php
session_start();
if(isset($_POST["login"])){
if(isset($_POST["pass"])){
$plog = $_POST["login"];
$ppass = md5($_POST["pass"]);
require("../config.php");
$link = mysql_connect($host,$log,$pass) or die("la connexion à échoué");
$dbsel = mysql_select_db($db,$link) or die("selection impossible");
function get_administrateur(){
$plog = $_POST["login"];
$ppass = md5($_POST["pass"]);
$tabAdmin = array();
$reqAdmin = " SELECT *
FROM administrateurs
WHERE Login = '".$plog."'
AND Pass = '".$ppass."' ";
$dataAdmin = mysql_query($reqAdmin) or die ("La requête pour les Admin dans login a échoué");
$i=0;
while($Admincourant = mysql_fetch_assoc($dataAdmin)){
$tabAdmin[$i] = $Admincourant;
$i++;
}
return $tabAdmin;
}
$Admin = get_administrateur();
if($Admin[0]['Login'] == $plog AND $Admin[0]['Pass'] == $ppass){
$_SESSION["UserValid"] = true;
if($Admin[0]["Admin"] == '1'){
$_SESSION["Admin"] = true;
}
else{$_SESSION["Admin"] = false;}
//setcookie("uv2" , true , time()+(15*24*3600));/* crée un cookie pour se souvenir du log et pass*/
header("Location: ../home.php");
}
else{$_SESSION["UserValid"]= false;}
}
}
?>
Et mon code pour l'affichage :
<?php
session_start();
if(isset($_SESSION["UserValid"])) { echo
<p>
La session marche
</p>
}
?>
Personnellement, je pense que le problème vient des variable de session qui ne se créent pas ou auquelles je n'ai pas accès en ligne...