PHP interesse |
|
ik heb het volgende login script en ik wil graag weten hoe veilig het is, hoe ik het veiliger kan maken.
script:
<?php
mysql_connect('192.168.0.11','databasenaam','databasewachtwoord') or die("couldn't connect to the database. Please try again.");
mysql_select_db('u56452099') or die(mysql_error());
session_start();
if(isset($_POST['login'])) {
if(trim($_POST['loginnaam']) != "" && trim($_POST['wachtwoord']) != "") {
$naam = $_POST['loginnaam'];
$wacht = md5($_POST['wachtwoord']);
$res1 = mysql_query("SELECT id, password, status FROM users where username='".$naam."'") or die(mysql_error());
if(mysql_num_rows($res1) > 0) {
$row = mysql_fetch_assoc($res1);
if(!strcmp($wacht, $row['password'])) {
$_SESSION['user'] = $naam; // gebruikersnaam van ingelogd persoon
$_SESSION['level'] = $row['level']; // bijbehorende gebruikersniveau
$_SESSION['time'] = time(); // de huidige tijd
$_SESSION['maxidle'] = 60*30; // het aantal seconden inactiviteit
} else {
$_SESSION = array();
session_destroy();
}
unset($row);
mysql_free_result($res1);
}
header("Location: calculation.php");
}
}
if(isset($_POST['logout']))
{
$_SESSION = array();
session_destroy();
header("Location: calculation.php");
}
if(!isset($_SESSION['user'])) {
?>
<?php mysql_connect('192.168.0.11','databasenaam','databasewachtwoord') or die("couldn't connect to the database. Please try again."); if(isset($_POST['login'])) { if(trim($_POST['loginnaam']) != "" && trim($_POST['wachtwoord']) != "") { $naam = $_POST['loginnaam']; $wacht = md5($_POST['wachtwoord']); if(!strcmp($wacht, $row['password'])) { $_SESSION['user'] = $naam; // gebruikersnaam van ingelogd persoon $_SESSION['level'] = $row['level']; // bijbehorende gebruikersniveau $_SESSION['time'] = time(); // de huidige tijd $_SESSION['maxidle'] = 60*30; // het aantal seconden inactiviteit } else { } } header("Location: calculation.php"); } } if(isset($_POST['logout'])) { header("Location: calculation.php"); } if(!isset($_SESSION['user'])) { ?>
html wanneer je niet ingelogt bent.
script:
<?php
} else {
$now = time();
if($now - $_SESSION['time'] > $_SESSION['maxidle']) {
$_SESSION = array();
session_destroy();
} else {
$_SESSION['time'] = $now;
}
?>
<?php } else { if($now - $_SESSION['time'] > $_SESSION['maxidle']) { } else { $_SESSION['time'] = $now; } ?>
Html wanneer je wel ingelogt bent.
script:
Verder zou ik graag willen weten hoe ik aan dit script toevoeg dat de row status in de database, not_banned moet zijn en dat de row alliance in database LOG Member moet zijn.
Kunne jullie me helpen dit script te verbeteren ??;-)
Alvast bedankt
|