md5() in mysql
Bart Waarom verplicht
31/05/2004 21:11:00md5() in mysql, dat hoort toch gewoon te werken?
Dit is mijn script (verkort):
Maar telkens zegt ie dat mun pass fout is, hoe komt dit?????
Dit is mijn script (verkort):
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?
$pass = htmlspecialchars(trim(md5($_POST['password'])));
$query = mysql_query("SELECT id FROM users WHERE username = '".$username."' AND password = '".$pass."'") or die('Query mislukt');
if (mysql_num_rows($query) == '')
{
echo 'Ongeldig username/password';
exit();
}
?>
$pass = htmlspecialchars(trim(md5($_POST['password'])));
$query = mysql_query("SELECT id FROM users WHERE username = '".$username."' AND password = '".$pass."'") or die('Query mislukt');
if (mysql_num_rows($query) == '')
{
echo 'Ongeldig username/password';
exit();
}
?>
Maar telkens zegt ie dat mun pass fout is, hoe komt dit?????
Gewijzigd op 31/05/2004 21:13:00 door Bart Waarom verplicht
PHP hulp
26/11/2024 11:20:13Mitch X
31/05/2004 21:22:00Hij zegt dat je pass fout is?
Hmmz zoals deze week al ergens eerder gezegt heb -> mysql_num_rows geeft een integer terug -> 0,1,2,3,4,5 etc ...
Hmmz zoals deze week al ergens eerder gezegt heb -> mysql_num_rows geeft een integer terug -> 0,1,2,3,4,5 etc ...
Bart Waarom verplicht
31/05/2004 21:30:00mysql_num_rows() geeft toch aan hoeveel rijen er zijn met die voorwaarden (WHERE username = '".$username."' AND password = '".$pass."'").
Dus als er 1 user is met die info dan zegt ie dat if mysql_num_rows 1 is, en dan log je in...
En trouwens, het script werkte in het begin perfect, totdat ik de passwords ging encrypten...
Als ik de encryptie weghaal, en ik het geëncrypte password uit de database haal en daarmee inlog, dan werkt ie wel :S...
Wat is er mis :|??
Dus als er 1 user is met die info dan zegt ie dat if mysql_num_rows 1 is, en dan log je in...
En trouwens, het script werkte in het begin perfect, totdat ik de passwords ging encrypten...
Als ik de encryptie weghaal, en ik het geëncrypte password uit de database haal en daarmee inlog, dan werkt ie wel :S...
Wat is er mis :|??
PHP erik
31/05/2004 22:57:00Ik denk dat het aan htmlspecialchars() ligt. Als er tekens zoals & of % inzitten dat maakt ie er &blah; van.
Haal htmlspecialchars() dus weg, het is toch totaal overbodig.
Enne...
if (mysql_num_rows($query) == '')
moet zijn
if (mysql_num_rows($query) == 0)
Er komt een integer uitrollen, dus is het 0, en niet [leeg]
Haal htmlspecialchars() dus weg, het is toch totaal overbodig.
Enne...
if (mysql_num_rows($query) == '')
moet zijn
if (mysql_num_rows($query) == 0)
Er komt een integer uitrollen, dus is het 0, en niet [leeg]
Gewijzigd op 31/05/2004 22:58:00 door PHP erik
Mitch X
31/05/2004 22:58:00Quote:
Hmmz zoals deze week al ergens eerder gezegt heb -> mysql_num_rows geeft een integer terug -> 0,1,2,3,4,5 etc ...
Zie je :)