Ah okay, jeg kan se hvis man bruger mysql_real_escape_string så fjerner den "farlige" tegn. Jeg har desuden lavet det således at den lagrer ip + at den gemmer brugerens krypterede kode ord i en cookie. Så hvis ikke der på den computer, der forsøger at tilgå sessionen ligger en cookie med kodeordet, så dræbbes sessionen.
<?php
include("connect.php");
include("config.php");
$username = mysql_real_escape_string($_POST[username]);
$getpassword = mysql_real_escape_string($_POST[password]);
$password = md5($zzzzzzzz.$getpassword);
//IP
function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP'])) //check ip from share internet
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) //to check ip is pass from proxy
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
//The login and session procedure
if ($username != "" or $getpassword != "")
{
$query = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password' LIMIT 1");
if ($row = mysql_fetch_assoc($query))
{
session_start();
setcookie($auth_cookie_name , $password);
$_SESSION['loginname'] = $row['username'];
$_SESSION['loginfirst'] = $row['firstname'];
$_SESSION['loginlast'] = $row['lastname'];
$_SESSION['pwd'] = $row['password'];
$_SESSION['id'] = $row['id'];
$_SESSION['ip'] = getRealIpAddr();
echo "Du er nu logget ind som ";
echo $_SESSION['loginname'];
}
else
{
echo "Brugernavn eller kodeord er forkert.";
}
}
else
{
echo "Nogle felter er ikke udfyldt";
}
?>Jeg ved ikke om det er tilstrækkeligt?