Connexion à ma BDD ne se fait pas
ingrosboug
-
ingrosboug -
ingrosboug -
Bonjour,
J'aimerai me connecter à ma BDD en php, mais je n'y arrive pas, il me renvoie un echo comme quoi mon login ne marche pas (cf.Désolé 1, vous avez peut-être fait une erreur dans la saisie des identifiants, mais votre parcours se finit là ...).
Je vous poste le contenu de mon fichier :
--------------------------------------------------------------------------------------------------------
<?php
session_start();
if ((isset($_GET['act'])) && ($_GET['act'] == 'logout'))
{
$_SESSION = array();
session_destroy();
session_start();
};
$host = "localhost";
$loginBD = "root";
$passwordBD = "";
$nameBD = "atollpalme";
// connexion à la base
$db = mysql_connect($host, $loginBD, $passwordBD) or die('Erreur de connexion '.mysql_error());
// sélection de la base
mysql_select_db($nameBD,$db) or die('Erreur de selection de la base '.mysql_error());
if (!isset($_POST['submit']))
{
echo '
<form id="connect" method="post" action="">
<fieldset><legend>Formulaire de connexion</legend>
<p><label for="login">Login : </label><input type="text" id="login" name="login" tabindex="1" value="" /></p>
<p><label for="pwd">Mot de passe :</label><input type="password" id="pwd" name="pwd" tabindex="2" /></p>
</fieldset>
<div><input type="submit" name="submit" value="Connexion" tabindex="3" /></div> </form>';
}
else
{
$login = (isset($_POST['login'])) ? htmlentities(trim($_POST['login'])) : '';
$pwd = (isset($_POST['pwd'])) ? htmlentities(trim($_POST['pwd'])) : '';
if (($login != '') && ($pwd != ''))
{
$req_utilisateur = sprintf("SELECT
nom,
prenom,
grade,
email
FROM
utilisateurs
WHERE
(login = '%s' AND passwd = '%s')",$login, md5($pwd));
$utilisateur = mysql_query($req_utilisateur) or die($req_utilisateur."<br />\n".mysql_error());
if (mysql_num_rows($utilisateur) == 1)
{
$personne = mysql_fetch_array($utilisateur);
$_SESSION['login'] = $login;
$_SESSION['nom'] = $personne['nom'];
$_SESSION['prenom'] = $personne['prenom'];
$_SESSION['grade'] = $personne['grade'];
$_SESSION['email'] = $personne['email'];
echo '<p>Vous êtes correctement identifié(e), <a href="liste-photos.php">cliquez ici pour visualiser les photos</a></p>'."\n";
}
else
{
echo '<p>Désolé 1, vous avez peut-être fait une erreur dans la saisie des identifiants, mais votre parcours se finit là ... </p>'."\n";
}
else
{
echo '<p>Désolé 2, vous avez peut-être fait une erreur dans la saisie des identifiants, mais votre parcours se finit là ... </p>'."\n";
};
}
(isset($_POST['submit']))
?>
--------------------------------------------------------------------------------------------------------
J'espère sincèrement que vous pourriez m'aider.
A bientôt.
J'aimerai me connecter à ma BDD en php, mais je n'y arrive pas, il me renvoie un echo comme quoi mon login ne marche pas (cf.Désolé 1, vous avez peut-être fait une erreur dans la saisie des identifiants, mais votre parcours se finit là ...).
Je vous poste le contenu de mon fichier :
--------------------------------------------------------------------------------------------------------
<?php
session_start();
if ((isset($_GET['act'])) && ($_GET['act'] == 'logout'))
{
$_SESSION = array();
session_destroy();
session_start();
};
$host = "localhost";
$loginBD = "root";
$passwordBD = "";
$nameBD = "atollpalme";
// connexion à la base
$db = mysql_connect($host, $loginBD, $passwordBD) or die('Erreur de connexion '.mysql_error());
// sélection de la base
mysql_select_db($nameBD,$db) or die('Erreur de selection de la base '.mysql_error());
if (!isset($_POST['submit']))
{
echo '
<form id="connect" method="post" action="">
<fieldset><legend>Formulaire de connexion</legend>
<p><label for="login">Login : </label><input type="text" id="login" name="login" tabindex="1" value="" /></p>
<p><label for="pwd">Mot de passe :</label><input type="password" id="pwd" name="pwd" tabindex="2" /></p>
</fieldset>
<div><input type="submit" name="submit" value="Connexion" tabindex="3" /></div> </form>';
}
else
{
$login = (isset($_POST['login'])) ? htmlentities(trim($_POST['login'])) : '';
$pwd = (isset($_POST['pwd'])) ? htmlentities(trim($_POST['pwd'])) : '';
if (($login != '') && ($pwd != ''))
{
$req_utilisateur = sprintf("SELECT
nom,
prenom,
grade,
FROM
utilisateurs
WHERE
(login = '%s' AND passwd = '%s')",$login, md5($pwd));
$utilisateur = mysql_query($req_utilisateur) or die($req_utilisateur."<br />\n".mysql_error());
if (mysql_num_rows($utilisateur) == 1)
{
$personne = mysql_fetch_array($utilisateur);
$_SESSION['login'] = $login;
$_SESSION['nom'] = $personne['nom'];
$_SESSION['prenom'] = $personne['prenom'];
$_SESSION['grade'] = $personne['grade'];
$_SESSION['email'] = $personne['email'];
echo '<p>Vous êtes correctement identifié(e), <a href="liste-photos.php">cliquez ici pour visualiser les photos</a></p>'."\n";
}
else
{
echo '<p>Désolé 1, vous avez peut-être fait une erreur dans la saisie des identifiants, mais votre parcours se finit là ... </p>'."\n";
}
else
{
echo '<p>Désolé 2, vous avez peut-être fait une erreur dans la saisie des identifiants, mais votre parcours se finit là ... </p>'."\n";
};
}
(isset($_POST['submit']))
?>
--------------------------------------------------------------------------------------------------------
J'espère sincèrement que vous pourriez m'aider.
A bientôt.
1 réponse
-
Bonjour
Histoire de voir ce qui se passe, modifie ton script autour de cette ligne :
$utilisateur = mysql_query($req_utilisateur) or die($req_utilisateur."<br />\n".mysql_error());
echo $req_utilisateur,'<br />'; $utilisateur = mysql_query($req_utilisateur) or die($req_utilisateur."<br />\n".mysql_error()); echo mysql_num_rows($utilisateur),'<br />';
Les mots de passe ont-il bien été enregistrés en md5 dans ta base ?