Hjælp til login med sessions
Hej folkensEr ved at prøve mig frem med et login system (mit første :P)
Har lavet en tutorial hvor navnene på brugerene stod i en tekstfil, det gik fint... Nu vil jeg gerne hente brugerne fra min sql db - men det spiller ikke rigtig.
Hver aktuel side starter med require_once(<mit script>) og jeg har prøvet at erstatte tilgangen til txt filen med tilgang til databasen... hvis det giver mening :P
Mit script:
<?php require_once('Connections/pbaseConn.php'); ?>
<?php
mysql_select_db($database_pbaseConn, $pbaseConn);
$query_brugerliste = "SELECT * FROM medlemmer";
$brugerliste = mysql_query($query_brugerliste, $pbaseConn) or die(mysql_error());
$row_brugerliste = mysql_fetch_assoc($brugerliste);
$totalRows_brugerliste = mysql_num_rows($brugerliste);
session_start();
function validerBrugerNavn($navn){
$lovlige_tegn = "a-zA-ZÅåØøÆæÁáÓóÍíÚúÝýÐþößüÜÖ\_\-";
$navnOK = (!ereg("[^$lovlige_tegn]",$navn))?true:false;
return $navnOK;
}
function validerKodeOrd($kodeord){
$lovlige_tegn = "a-zA-Z0-9\_\-";
$kodeordOK = (!ereg("[^$lovlige_tegn]",$kodeord))?true:false;
return $kodeordOK;
}
if(!isset($_SESSION["bruger_id"])){
$_SESSION["bruger_id"] = "intet";
}
if(isset($_POST["brugernavn"]) && isset($_POST["adgangskode"])){
if(!validerBrugerNavn($_POST["brugernavn"]) && !validerKodeOrd($_POST["adgangskode"])){
header("Location:fejllogin.html");
exit;
}
else {
$godkendtLogin = "nej";
foreach($brugerliste as $brugere){
$navnErRigtigt = ($_POST["brugernavn"] == $brugere["brugerNavn"])?true:false;
$kodenErRigtig = ($_POST["adgangskode"] == $brugere["brugerPass"])?true:false;
if($navnErRigtigt && $kodenErRigtig){
$_SESSION["bruger_id"] = $brugere["id"];
$_SESSION["bruger_navn"] = $brugere["brugernavn"];
$_SESSION["bruger_mail"] = $brugere["email"];
$godkendtLogin = "ja";
}
}
if($godkendtLogin == "nej"){
header("Location:fejllogin.html");
exit;
}
}
}
if($_SESSION["bruger_id"] != "intet"){
$logudknap = "<a href=\"$_SERVER[PHP_SELF]?logaf=true\">Log ud</a>";
}
if(!isset($_SESSION["bruger_id"]) OR $_SESSION["bruger_id"] == "intet"){
header("Location:login.html");
}
if($_GET["logaf"]){
unset($_SESSION["bruger_id"]);
unset($_SESSION["bruger_navn"]);
unset($_SESSION["bruger_mail"]);
session_unset();
header("Location:logud.html");
exit;
}
mysql_free_result($brugerliste);
?>
