session probs
Jeg har en loginform på login.php hvor bruger logger sig ind og går igennem log.php hvor man finder:{
include("config.php");
$query = "SELECT id, user, pass FROM login WHERE user = '".$_POST['bruger']."' AND pass= '".$_POST['pass']."'";
$result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
$log = mysql_fetch_array($result);
if ($_POST['bruger'] = $log['user'] && $_POST['pass'] = $log['pass']) {
$_SESSION['status'] = "login";
$_SESSION['navn'] = $log["user"];
$_SESSION['logingang'] = 1;
print(" <script language='javascript'>
location.href='index.php';
</script>");
}
else
{
$_SESSION['status'] = "fejl";
print(" <script language='javascript'>
location.href='login.php';
</script>");
}
}
?>
Login scriptet virker også fint, på næste side index.php er der så følgende:
<?php
include("config.php");
$time = date("d/m-Y H:i:s");
$bruger = $_SESSION['navn'];
$ip = $_SERVER['REMOTE_ADDR'];
$logintjek = $_SESSION['logingang'];
if($logintjek = 1){
mysql_query("INSERT INTO userlogins (username, time, ip) values ('$bruger', '$time', '$ip')");
$_SESSION['logingang'] = '0';
}
?>
Den indsætter brugernavn, tid og ip ind i databasen for at holde noget log med brugerne når de logger ind, men jeg vil ha den til kun at tilføje til siden når de kommer fra login-formen.
Derfor indsatte jeg $_SESSION['logingang'] = 1; på log.php
og så if($logintjek = 1){
mysql_query("INSERT INTO userlogins (username, time, ip) values ('$bruger', '$time', '$ip')"); i index.php
så den kun indsætter i databasen når session logingang = 1. SÅ vil jeg have sat en anden værdi i session logingang, f.eks. med 0 så den ikke indskriver i databasen hvis jeg f.eks. refresher index.php, så derfor indsatte jeg $_SESSION['logingang'] = 0;
meeen det virker ikke rigtigt, men den sætter godt nok $_SESSION['logingang'] = 0;
Dette kan jeg også se hvis jeg indsætter en <?php echo $_SESSION['logingang']; ?> længere nede.
Hvor går det galt?