PHP ver gevorderde |
|
Hey SIMA mensen!
Ik ben bezig geweest met een login script voor een vriend. Hij wou
geen gebruik maken van een mysql database omdat hij daar nog
niets van snapt, en dus liever een aanpasbaar php scriptje wil
hebben. Dat heb ik geprobeerd, en dit is de eerste keer dat ik een
non-mysql login scriptje heb gemaakt. Niet afgekeken van andere
scripts of iets dergelijks, dus ik weet niet of hij wel echt veilig is...
Daarom zou ik jullie willen vragen of dit script veilig is..
www.runescapeforum.net/login?page=login
Hier het script:
LOGIN.PHP
<?PHP
error_reporting(E_ALL);
if (isset($_COOKIE['cook_login']))
{
echo "U bent al ingelogged";
}
else
{
if (isset($_POST['login_account']))
{
$ErrorArray = array();
if (empty($_POST['user_name']))
$ErrorArray[] = "Vul gebruikersnaam in<br>";
if (empty($_POST['user_password']))
$ErrorArray[] = "Vul wachtwoord in<br>";
if (count($ErrorArray) > 0)
{
echo "<ul>";
for ($i = 0; $i < count($ErrorArray); $i ++)
{
echo "<li>" . $ErrorArray[$i] . "</li>";
}
echo "</ul>";
}
else
{
$use_username = strtolower($_POST['user_name']);
if (in_array($use_username, $username))
{
if ($_POST['user_password'] == $password[$use_username])
{
setcookie("cook_login", $use_username . ";" . $_POST['user_password'], time()+3600*24*31*1, "/");
echo stripslashes("Je bent nu ingelogged, je kunt nu naar de beveiligde pagina\'s gaan");
}
else
echo "Gebruikersnaam en Wachtwoord komen niet overeen";
}
else
echo "Ongeldige Gebruikersnaam";
}
}
else
{
echo "<table width='500' cellspacing='1'>";
echo "<form action='' method='post'>";
echo "<tr><td width='300'> <b>Gebruikersnaam:</b> </td>";
echo "<td> <input name='user_name' type='text' maxlength='20' size='20'> </td>";
echo "<tr><td width='200'> <b>Wachtwoord:</b> </td>";
echo "<td> <input name='user_password' type='password' maxlength='20' size='20'> </td>";
echo "<tr><td colspan='2'><div align='center'> <input name='login_account' type='submit' value='Inloggen!'> </div></td>";
echo "</form>";
echo "</table>";
}
}
?>
<?PHP if (isset($_COOKIE['cook_login'])) { echo "U bent al ingelogged"; } else { if (isset($_POST['login_account'])) { if (empty($_POST['user_name'])) $ErrorArray[] = "Vul gebruikersnaam in<br>"; if (empty($_POST['user_password'])) $ErrorArray[] = "Vul wachtwoord in<br>"; if (count($ErrorArray) > 0) { for ($i = 0; $i < count($ErrorArray); $i ++) { echo "<li>" . $ErrorArray[$i] . "</li>"; } } else { { if ($_POST['user_password'] == $password[$use_username]) { setcookie("cook_login", $use_username . ";" . $_POST['user_password'], time()+3600*24*31*1, "/"); echo stripslashes("Je bent nu ingelogged, je kunt nu naar de beveiligde pagina\'s gaan"); } else echo "Gebruikersnaam en Wachtwoord komen niet overeen"; } else echo "Ongeldige Gebruikersnaam"; } } else { echo "<table width='500' cellspacing='1'>"; echo "<form action='' method='post'>"; echo "<tr><td width='300'> <b>Gebruikersnaam:</b> </td>"; echo "<td> <input name='user_name' type='text' maxlength='20' size='20'> </td>"; echo "<tr><td width='200'> <b>Wachtwoord:</b> </td>"; echo "<td> <input name='user_password' type='password' maxlength='20' size='20'> </td>"; echo "<tr><td colspan='2'><div align='center'> <input name='login_account' type='submit' value='Inloggen!'> </div></td>"; } } ?>
CONFIG.INC.PHP
<?PHP
$username[] = "edwin";
$username[] = "edzard";
$password['edwin'] = "terhorst";
$password['edzard'] = "poppema";
$page[] = "home";
$page[] = "login";
?>
<?PHP $username[] = "edwin"; $username[] = "edzard"; $password['edwin'] = "terhorst"; $password['edzard'] = "poppema"; $page[] = "home"; $page[] = "login"; ?>
Er zit ook een stukje navigatie script in, maar die laat ik
achterwegen, want dat zit wel KnoR...
|