Identifier un uutiilisateur [php] - PHP - Programmation
Marsh Posté le 08-02-2007 à 11:36:55
sujet maintes fois abordé, tu trouveras plein d'exemple avec google
drexlbob a écrit : Je voudrais donc comparer le login et le password que saisi l'utilisateur par rapport a ceux qui se trouve dans la base |
tu sais faire une requête sql ? si oui tu devrais trouver la réponse tout seul
Marsh Posté le 08-02-2007 à 13:16:39
ben tu récupères les variables entrées via $_POST['']; pour le pseudo et le password;
tu fais une requête sql pour comparer le pass dans la bdd avec celui rentré dans le formulaire de connection...
je vois pas la difficulté
et comme dit plus haut, google est ton ami ^^
Marsh Posté le 08-02-2007 à 13:54:25
Mxtrem a écrit : ben tu récupères les variables entrées via $_POST['']; pour le pseudo et le password; |
OK c ce que j'ai fait mais ca ne marche pas
Voila le code :
$login= $_POST['login'];
$pass=$_POST['pass'];
$selection = "SELECT * FROM `user` WHERE `login` LIKE '$login_in_db' AND `pass` LIKE '$pass_in_db' LIMIT 0, 30 ";
$result = mysql_query($seletion);
//echo $result;
if ($login_in_db == $login && $pass_in_db == $pass)
{
echo "$pass <br />";
echo "$login<br />";
echo "Authentification russie <br />";
}
else
echo "Authentification echoue
Merci de ton aide!
Marsh Posté le 08-02-2007 à 14:04:51
Un petit coté "garcimore de la variable" dans ton script
ça sort d'ou $login_in_db et $pass_in_db.
Ensuite si tu lisais la doc tu verrais qu'un mysql_query tout seul n'est pas suffisant lors d'un select et que tu as besoin de fetch.
Enfin ton script présente un faille classique dite "sql injection".
Conseil: Mets pas la charue avant les boeufs et commence doucement par apprendre les bases du php, ensuite ça viendra tout seul.
Marsh Posté le 08-02-2007 à 14:18:37
anapajari a écrit : Un petit coté "garcimore de la variable" dans ton script |
OK, merci pour le conseil c'est vrai que je veux aller un peu trop vite mai qu'est ce que je dois mettre a la place des variables pass_in_db et login_in_db (pour pouvoir comparer a $_POST['login'] et $_POST['pass'], je suis obliger d'utiliser des variabe nan ???, je ne vais pas mettre ca en dur un par un lol)
Je te remet donc un extrait de mon code avec un fetch et deux valeur en dur qui existent dans ma base (j'ai tester la requete testees dans phpmyadmin mai lorseque je le met dans mysal_query ca me renvoi une erreur "Query was empty " bizar):
Marsh Posté le 08-02-2007 à 14:19:20
J'ai oublier le code
voila : $db_selected = mysql_select_db('site');
if (!$db_selected)
{
die('Impossible de se connecter : ' . mysql_error());
}
$selection = "SELECT * FROM `user` WHERE `login` LIKE 'dilob' AND `pass` LIKE 'qwerty' LIMIT 0, 30 ";
$result = mysql_query($seletion);
if (!$result)
{
echo "Impossible d'executer la requete ($sql) dans la base : " . mysql_error();
exit;
}
var_dump($result);
echo $result;
if (mysql_num_rows($result) == 0)
{
echo "Aucune ligne trouve, rien a afficher.";
exit;
}
while ($row = mysql_fetch_assoc($result))
{
echo $row["pass"];
echo $row["login"];
}
Marsh Posté le 08-02-2007 à 22:03:00
drexlbob a écrit : J'ai oublier le code |
Marsh Posté le 09-02-2007 à 09:46:08
Avec affichage des erreurs et des warning, c'est le genre d'erreur corrigée en 3 secondes...
Marsh Posté le 08-02-2007 à 10:20:59
Bonjour a tous!
Je viens de comprendre comment on se sert des sessions. J'ai fait une recherche sur google pour savoir comment identifier un utilisateur qui c'est bien enregistre au prealable sur ma base(je nai pas vraiment trouve ce que je cherche)
Dans ma base j'ai donc une table user contenant plein de champs dont un champ login et un champ password.
Je voudrais donc comparer le login et le password que saisi l'utilisateur par rapport a ceux qui se trouve dans la base afin qu'il puisse acceder a son compte. Quelqu'un
conaitrait-il un site complet la dessus ou pourait-il m'expliquer comment proceder???
Merci.
---------------
L'etre humain juge tres vite comprend lentement, s'enerve facilement et perd vite ses facultees d'enfant!!!!