Code pour authentification des utilisateurs

Fermé
gerald3 - 30 août 2013 à 18:07
Doctor C Messages postés 627 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 19 février 2016 - 30 août 2013 à 19:37
Bonsoir, j'ai besoin de votre aide svp.
j'ai créer un scrip, pour l'authentification des utilisateur avant qu'ils n'accède a le première page de mon site. j'ai créer un BD dans phpAdmin de wampserver.mon code est le suivant:

<?php require_once('connections/passe.php'); ?><?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
session_start();
}

$loginFormAction = $_SERVER['PHP_SELF'];
if (isset($_GET['accesscheck'])) {
$_SESSION['PrevUrl'] = $_GET['accesscheck'];
}

if (isset($_POST['textfield'])) {
$loginUsername=$_POST['textfield'];
$password=$_POST['textfield2'];
$MM_fldUserAuthorization = "";
$MM_redirectLoginSuccess = "pagerégion.html";
$MM_redirectLoginFailed = "reffu.php";
$MM_redirecttoReferrer = false;
mysql_select_db($login, $user);

$LoginRS__query=sprintf("SELECT nom et prenom, mots de passe FROM user WHERE nom et prenom='%s' AND mots de passe='%s'",
get_magic_quotes_gpc() ? $loginUsername : addslashes($loginUsername), get_magic_quotes_gpc() ? $password : addslashes($password));

$LoginRS = mysql_query($LoginRS__query, $passe) or die(mysql_error());
$loginFoundUser = mysql_num_rows($LoginRS);
if ($loginFoundUser) {
$loginStrGroup = "";

//declare two session variables and assign them
$_SESSION['MM_Username'] = $loginUsername;
$_SESSION['MM_UserGroup'] = $loginStrGroup;

if (isset($_SESSION['PrevUrl']) && false) {
$MM_redirectLoginSuccess = $_SESSION['PrevUrl'];
}
header("Location: " . $MM_redirectLoginSuccess );
}
else {
header("Location: ". $MM_redirectLoginFailed );
}
}
?>
<?php
//mysql_connect('localhost','root','');
//mysql_select_db('login');

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<!-- DW6 -->
<head>
<!-- Copyright 2005 Macromedia, Inc. All rights reserved. -->
<title>accueil</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="mm_spa.css" type="text/css" />
</head>
<body bgcolor="#FFFFFF">
<table width="1116" border="0" cellpadding="0" cellspacing="0">
<tr bgcolor="#220103">
<td colspan="2" rowspan="2" nowrap="nowrap" bgcolor="#000000"><img src="orange.jpg" width="255" height="255" /></td>
<td width="589" height="55" align="center" valign="middle" nowrap="nowrap" bgcolor="#000000" id="logo"><font size="6">MATRIX </font></td>
<td width="4" rowspan="2" bgcolor="#FFFFFF"> </td>
<td width="275" rowspan="2" bgcolor="#000000"> </td>
</tr>

<tr bgcolor="#220103">
<td height="103" align="center" valign="middle" nowrap="nowrap" bgcolor="#000000" id="tagline"><font size="5">Outil de gestion de la matrice de trafic PDH </font></td>
</tr>

<tr bgcolor="#FF9900">
<td colspan="5"><img src="mm_spacer.gif" alt="" width="1" height="1" border="0" /></td>
</tr>

<tr bgcolor="#FF080E">

voici l'erreur qui s'affiche lorsque j'entre le nom de l'utilisateur et le mots de passe dans le navigateur:

Verifier votre requeteYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'et prenom='tresor'' at line 1.

mrc d'avance
A voir également:

1 réponse

Doctor C Messages postés 627 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 19 février 2016 398
30 août 2013 à 19:37
Mon SQL est un peu loin mais ton message d'erreur te dit que ta requête SQL est incorrecte.

$LoginRS__query=sprintf("SELECT nom et prenom, mots de passe FROM user WHERE nom et prenom='%s' AND mots de passe='%s'",  


Selon cette requête tu aurais dans ta table "user" un champ qui se nomme "nom et prenom" et un autre "mots de passe". Je suis pas mal certain que tu ne peux pas mettre d'espaces dans un nom de champ.

Je renommerais ces champs "nom_et_prenom" et "mots_de_passe" pour bien faire. Tu peux tester ta requête directement dans l'administration de ta base de données SQL pour valider si ta requête SQL te retourne ce que tu veux.

Bonne chance!
0