Bonjour à tous
Voilà, continuant ma découverte de php/mysql, je suis en train d'expérimenter un controle d'accès via USER/MOTDEPASSE en interrogeant la base de donnée : j'ai donc créé deux utilisateurs dans une base de donnée que j'ai appelée auth :
Et voici mon script php :...
insert into auth values
('user', 'pass');
insert into auth values
( 'testuser', password('test123') );
grant select, insert, update, delete
on auth.*
to webauth@localhost
identified by 'webauth';
Le test avec mot de passe nom codé ("user" et "pass" ) fonctionne sans problème, je peux accéder à la page, par contre avec le mot passe codé par la fonction PASSWORD() de mySQL (testuser/test123) j'ai le message comme quoi le "visitor's name and password combination are not correct" alors que si je vais dans phpmyadmin pour copier/coller le mot de passe codé (çà ressemble à çà : 39817a786ddf7333), çà marche...// connection
$mysql = mysql_connect( 'localhost', 'webauth', 'webauth' );
if(!$mysql)
{
echo 't'as pas réussi à te connecter, couillon!!!.';
exit;
}
// selection de la bonne database
$mysql = mysql_select_db( 'auth' );
if(!$mysql)
{
echo 'impossible de se connecter à la database sélectionnée.';
exit;
}
// query the database to see if there is a record which matches
$query = "select count(*) from auth where
name = '$name' and
pass = '$password'";
$result = mysql_query( $query );
if(!$result)
{
echo 'Cannot run query.';
exit;
}
$count = mysql_result( $result, 0, 0 );
if ( $count > 0 )
{
// visitor's name and password combination are correct
echo '<h1>Here it is baby!</h1>';
echo 'I bet you are glad you can see this secret page.';
}
else
{
// visitor's name and password combination are not correct
echo '<h1>Go Away! prout</h1>';
echo 'You are not authorized to view this resource.';
}
J'espère que je me suis bien fait comprendre... En gros : pouvez-vous m'expliquer ce que j'ai fait de mal pour devoir rentrer "39817a786ddf7333" et non "test123" pour passer l'authentification.
Merci d'avance pour vos réponses
Partager