Connexion d'un utilisateur
bonjour,
j'ai besoin de faire un espace client, mais ce qui ce passe, c'est que j'ai un ficher client.php que met dans toutes les pages avec la fonction <?php include.... >
ce que je ne comprend pas c'est que cela ne fonctionne pas
ce qui se passe exactement
1- si je marque uniquement l'identifiant, j'ai bien mon message d'erreur.
2- si je marque uniquement le mot de passe, j'ai bien le message d'erreur
3- si je marque un mauvais identifiant et mot de passe, j'ai cette page sur firefox (La connexion a été réinitialisée)
4- si je marque le bonne identifiant et mot de passe j'ai le même page
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
|
<?php
// vérification des entrées du formulaire.
if (isset($_POST['ok']) && $_POST['ok'] == 'ok')
{
// Vérification si les données sont remplis.
if ((isset($_POST['login']) && !empty($_POST['login'])) &&
(isset($_POST['pass']) && !empty($_POST['pass'])))
{
// Connection a la basse de donnée et table
include('connection.inc.php');
$base = mysql_connect ($bdd_host, $bdd_user, $bdd_passe) or die("Impossible de se connecter à la base de données");;
mysql_select_db ($bdd_base, $base) or die("Impossible de se sélectionner la base de données");;
// vérification du couple login et pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"
AND pass_md5="'.mysql_escape_string(md5($_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 on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1)
{
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: espaceclient.php');
exit();
}
// si on ne trouve 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.';
header('Location: index.php');
}
// sinon, alors la, il y a un gros problème :)
else
{
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
header('Location: index.php');
}
}
else
{
$erreur = 'Au moins un des champs est vide.';
header('Location: index.php');
}
}
?> |