Hallo allemaal, ik ben een beginner met php en mysql en ben bezig met een klein login script te schrijven.
Alleen zit ik nu al vast :S:S

Kan iemand naar dit script kijken voor me, en hem aanpassen zodat ik zie wat ik fout doe??

Dit is het script: (user/pass afgedekt)
<?

$db = mysql_connect("localhost", "***", "***");
mysql_select_db("login");

$query = mysql_query("
SELECT user, password FROM user
");

$gegevens = mysql_fetch_assoc($query);

print("<form name='inlog' method='post'>
<input type='text' name='user'><br>
<input type='text' name='password'>
<input type='submit' value='log in'>");

$user = ($_POST['user']);
$pass = ($_POST['password']);

if(strlen($_POST['user']) < 1 || strlen($_POST['password']) < 1)
{
echo("!");
}
else
{
if (($gegevens['user'] == '$user') and ($gegevens['password'] == '$pass'))
{
print("ok");
}

else
{
print("Jammer joh");
}
}
?>
wat werkt niet ??

Je moet het sowieso zo doen, in deze volgorde:

<?
$user = $_POST['user'];
$pass = $_POST['password'];

$res = mysql_query("SELECT user, password FROM user WHERE user = '" . $user . "' AND password = '" . $pass . "'");

if (mysql_num_rows($res) >= 1)
{
echo "Ingelogd!";
}
else
{
echo "NIET ingelogd!";
}
?>

volgende keer een duidelijk omschrijving wat wel en nie ukt met een goed geformuleerde vraag erbij! als je nieuw topic post staat er een linkje over 'slimme vragen stellen'.. lees die eens door
ok, sorry dat wist ik niet.
Volgende keer zal ik het wat netter doen.

Toch nog een kleine vraag.
Wat doet de functie
if (mysql_num_rows($res) >= 1)
precies??

Alvast weer heel erg bedankt
mysql_num_rows() telt het aantal records die worden opgehaalt met die query.
mysql_num_rows
Dus:
if(mysql_num_rows($res) >= 1)
betekent dat er wordt gecontroleerd of $res niet kleiner dan 1 is.
wat hij werkelijk controleerd is of $res groter of gelijk is aan 1.. :)

Reageren