Session et php

Résolu
Rom190686 Messages postés 436 Date d'inscription   Statut Membre Dernière intervention   -  
Rom190686 Messages postés 436 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Malgré mes nombreuses recherche je reste bloqué avec ma session.
J'ai une page d'identification avec formulaire qui interroge une base de donnée pour vérifier que l'utilisateur et le mot de passe sont OK.
Jusque là pas de souci.
Si les infos sont OK, alors on redirige le visiteur vers une page.
Cependant, si dans la barre d'adresse, je tape le nom de cette page sans avoir avant entré mon login et mot de passe, la page s'affiche quand même.
Donc elle n'est pas vraiment sécurisée.
Voici, ci-dessous mon code.
Merci d'avance pour votre aide.
Page de traitement des infos du formulaire et création de la session :

<?php
mysql_connect("localhost", "root", "");
mysql_select_db("mabdd");

if(isset($_POST) && !empty($_POST['mail']) && !empty($_POST['mdp'])) {

$mail = $_POST['mail'];
$mdp = $_POST['mdp'];

$sql = "SELECT mot_de_passe FROM matable WHERE ad_mail='".$mail."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

$data = mysql_fetch_assoc($req);

if($data['mot_de_passe'] != $mdp) {
Header("Location: identification-incorrecte.html");
exit;
}
else {
session_start();
$_SESSION['login'] = $mail;

Header("Location: espace-perso.php");
}
}
else {
Header("Location: identification-vide.html");
exit;
}
?>

Ci-dessous, la vérification en haut de chacune de mes pages "sécurisées" :

<?php
session_start();

if(!isset($_SESSION['login'])) {
Header("Location: espace-organisateur_1.php");
}
?>

Merci de me dire ce qui ne va pas dans mon code...
A voir également:

7 réponses

djflexlive Messages postés 557 Date d'inscription   Statut Membre Dernière intervention   95
 
Est ce que tu fermes ton navigateur avant de faire les essais ? Si non, c'est tout à fait normal et y'a pas à s'inquiéter !
0
Rom190686 Messages postés 436 Date d'inscription   Statut Membre Dernière intervention   35
 
oui, j'ai même redemarré mon pc
0
Rom190686 Messages postés 436 Date d'inscription   Statut Membre Dernière intervention   35
 
Si je remplace le : if(!isset($_SESSION['login'])) {
par if(isset($_SESSION['login'])) {

(j'ai en levé le "!" devant le isset)

alors là, il me refuse l'accès à la page.

Plutôt bizarre, en gros même si je ne me suis pas identifié, pour lui, ma session éxiste...
0
Sparkles
 
Je pense que le problème se situe sur le sessionstart(), que tu dois placer avant tout code. Mais je ne suis pas sûr.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Sparkles
 
EDIT:
Désolé, je n'avais pas vu que tu le mettais déjà...je n'arrive pas à trouver le soucis(en même temps, mes connaissances sont limitées)
0
djflexlive Messages postés 557 Date d'inscription   Statut Membre Dernière intervention   95
 
As tu essayé de mettre ces deux pages sur un hébergeur voir ce que ca dit ?
0
Rom190686 Messages postés 436 Date d'inscription   Statut Membre Dernière intervention   35
 
Bonsoir, j'ai trouvé le problème.
Ca vient de mon navigateur. En fait, "firefox" enregistre mes pages et garde ma session active.
J'ai testé sur l'IE et le safari.
Tout fonctionne parfaitement.
Merci tout de même pour votre aide.
0