löst...
Hej, nu har jag snart suttit hela kvällen, och snart blir jag knäpp på mitt session login skript.
Just nu i databasen har jag 2 användare, anger jag deras uppgifter i formuläret, så händer absolut inget, inget fel, den visar bara återigen formuläret. Skriver jag in fel lösen/användarnamn så får jag felmed. att lösen/användarnamn är fel försök igen, så det verkar fungera så långt
är det någon vänlig själ som kan tänka sig att titta igenom mitt skript? Det är säkert bara något litet fel...
Filen - admin_session.php
<?php
session_start();
// ------------------------------------------------------
// Databasanslutningen
// ------------------------------------------------------
include "conn.php";
// ------------------------------------------------------
// Inloggning
// Om användaren har tryckt på "submit" så kollar vi om
// han/hon finns i databasen
// ------------------------------------------------------
//if (isset($_POST['submit'])){
// $pass = md5($_POST['passwd']);
// $sql = "SELECT id FROM admin
// WHERE user='{$_POST['user']}'
// AND pass='{$pass}'";
// $result = mysql_query($sql);
if (isset($_POST['submit'])){
$sql = "SELECT id FROM admin
WHERE user='{$_POST['user']}'
AND pass='{$_POST['passwd']}'";
$result = mysql_query($sql);
// ------------------------------------------------------
// Hittades inte användarnamn och lösenord
// skicka till formulär med felmeddelande
// ------------------------------------------------------
if (mysql_num_rows($result) == 0){
header("Location: admin_session.php?badlogin=");
exit;
}
// ------------------------------------------------------
// Sätt sessionen med unikt index
// ------------------------------------------------------
$_SESSION['sess_id'] = mysql_result($result, 0);
$_SESSION['sess_user'] = $_POST['user'];
header("Location: welcome_session.php");
exit;
}
// ------------------------------------------------------
// Utloggning
// ------------------------------------------------------
if (isset($_GET['logout'])){
$_SESSION = array();
session_unset();
session_destroy();
header("Location: admin_session.php");
exit;
}
// ------------------------------------------------------
// Om inte inloggad visa formulär, annars logga ut-länk
// ------------------------------------------------------
if (!isset($_SESSION['sess_user'])){
echo "<h3>Logga in</h3>\n";
// ------------------------------------------------------
// Visa felmeddelande vid felaktig inloggning
// ------------------------------------------------------
if (isset($_GET['badlogin'])){
echo "Fel användarnamn eller lösenord!<br>\n";
echo "Försök igen!\n";
}
?>
<form action="admin_session.php" method="post">
Användarnamn:<br>
<input type="text" name="user"><br>
Lösenord:<br>
<input type="password" name="passwd"><br>
<input type="submit" name="submit" value="Logga in">
</form>
....
Filen - welcome_session.php
<?php
session_start();
// ------------------------------------------------------
// Kolla om inloggad = sessionen satt
// ------------------------------------------------------
if (!isset($_SESSION['sess_user'])){
header("Location: admin_session.php");
exit;
}
?>
<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>admin - startSida</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
Välkommen <?=$_SESSION['sess_user'] ?><br><br>
<a href="register_session.php">Registera dig</a><br>
<a href="admin_session.php?logout=">Logga ut</a>
</body>
</html>
tack på förhand...
