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 derniers messages sur les forums

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 :-:
bender
le 16/04/2008 à 16:04
Problème d'ouverture de session
Oui moi non plus je ne vois pas l'intérêt ! J'ai suivis le tuto de "PHPFACILE" mais apparement je m'en suis mal servis...

Nieveau php je n'ai que ça dans Membre.php, le reste ce sont des balises php qui affichent des tableaux.

Du coup il faut que je fasse quoi pour être dirigé vers Membre.php lorsque je tape le bon login et le bon mot de passe ?
:-: BenDeR :-:
bender
le 14/04/2008 à 16:39
Problème d'ouverture de session
Oui biensûr Keika !

Voilà...

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Futur-PC</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="design.css" />
</head>
<body Link="#FF6F00" alink="#FF6F00" vlink="#FF6F00">
<form action="Membre.php" method="post">
<font size="2">Login : </font><br><input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br>
<font size="2">Mot de passe : </font><input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br><br>
<input type="submit" name="connexion" value="Connexion">
</form>
<a href="Inscription.php"><font size="2" color="#000000">S'inscrire</font></a>
<?php
if (isset($erreur)) echo '<br><br>',$erreur;
?>
</body>
</html>
:-: BenDeR :-:
bender
le 14/04/2008 à 15:42
Problème d'ouverture de session
J'ai placé le print_r après le mysql_fetch_array mais il ne ce passe rien de spécial !

Je ne dois pas m'y prendre comme il faut...

Help me please !
:-: BenDeR :-:
bender
le 11/04/2008 à 15:42
Problème d'ouverture de session
Désolé j'au un peu de difficulté pour placer le print_r. Il faut que je le mette où exactement ?
:-: BenDeR :-:
bender
le 11/04/2008 à 15:37
Problème d'ouverture de session
Non je n'ai aucun message d'erreur ! J'ai utilisé un programme de débugage qui m'a retourné des erreurs, je les ais corrigés mais j'ai toujours le même problème !

Je vais essayer de faire ce que tu m'as dit.
:-: BenDeR :-:
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 :-:
LoadingChargement en cours