bender

Inscris le 11/04/2008 à 15:10
  • Signature
    :-: BenDeR :-:
  • Nombre de sujets
    1
  • Nombre de messages
    9
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses dernières news

Aucune news

Ses derniers sujets sur les forums

forum
bender
le 11/04/2008 à 15:24
Problème d'ouverture de session
Bonjour,

Après avoir suivis le "Comment faire" à propos de la création d'un espace membre, j'ai un petit soucis au niveau de l'ouverture de session.
En effet, une fois avoir créer un nouveau compte (Inscription.php), j'accède directement à l'espace membre (membre.php) sans aucun soucis mais quand je me déconnecte et essaye de me reconnecter avec le pseudo et le mot de passe que je viens de créer rien ne ce passe et je reste sur la page d'accueil...

Je vous met ci-dessous mes codes php :

Accueil.php

<?php
// test : si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('mysql', $base);
// teste si une entrée de la base contient le login et le pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.md5(mysql_escape_string($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: Membre.php');
exit();
}
// si aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu !';
}
// sinon, il y a un problème
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Il manque un champs !';
}
}
?>


Inscription.php

<?php
// test : si le visiteur a soumis le formulaire
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {
// teste de l'existence de nos variables et si elles ne sont pas vides
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))) {
// test des deux mots de passe
if ($_POST['pass'] != $_POST['pass_confirm']) {
$erreur = 'Les 2 mots de passe sont différents.';
}
else {
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('mysql', $base);
// recherche si ce login est déjà utilisé par un autre membre
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_array($req);
if ($data[0] == 0) {
$sql = 'INSERT INTO membre VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.md5(mysql_escape_string($_POST['pass'])).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: Membre.php');
exit();
}
else {
$erreur = 'Login déjà pris !';
}
}
}
else {
$erreur = 'Il manque un champs !';
}
}
?>


Membre.php

<?php
session_start();
if (!isset($_SESSION['login'])){
header('Location: Accueil.php');
exit();
}
?>


Merci de bien vouloir m'éclairer sur mon problème.
:-: BenDeR :-:

Ses derniers messages sur les forums

forum
bender
le 16/04/2008 à 16:26
Problème d'ouverture de session
J'ai déjà essayer d'enlever la partie PHP de Membre et là je réussi à me loguer mais je peux aussi me loguer avec n'importe quel autre login ou mot de passe et ça fonctionne aussi !!

C'est tout ou rien... ^^
:-: BenDeR :-:

Ses derniers commentaires de news

Aucun commentaire de news

Ses derniers commentaires de sites

Aucun commentaire de sites

Ses derniers commentaires de wall

Aucun commentaire wall
LoadingChargement en cours