Seite 1 von 1

session überprüfen

Verfasst: 17.12.2006 21:18
von deathcakeman
So leute nehmen wir mal, in dr URl steht:
xxx/xx.php?sid=xxx

wenn jetzt jemand der eingeloggt ist
xxx/xx.php?sid=xxxy
macht dann soll de code ausgeführt. leider klappt das nich, da die seite, egal ob das zutrifft oder nicht, solange geladen wird, bis das laden abbricht.
Da kommt dann so ne alert meldung

Code: Alles auswählen

function checksessionid($location, $sessionname, $sessionid) {
if (isset($_GET['sid'])) 
{
$sid=$_GET['sid'];
} 
else 
{
$sid="";
}
$sessionreg=true;
$checksesreg=mysql_query("SELECT * FROM sessions WHERE session_id = '$sessionid'");
while ($row = mysql_fetch_object ($checksesreg)) {
$sesreg=$row->username;
if ($sesreg=="") {
$sessionreg=false;
}
}
if ($sessionreg==true) {
if ($sessionid!=$sid) {
header("Location: http://".$location."/logout.php?error=2&".$sessionname."=".$sessionid."");
}
}
}

Verfasst: 17.12.2006 21:27
von larsneo
http://www.php.net/session lesen und verstehen - und den code in bezug auf sql-injektion, cross-site-scripting und CSRF analysieren :roll:

Verfasst: 17.12.2006 21:27
von deathcakeman
ich will doch einfach nur, das wenn ín url eine andere session steht, als die die dem user zugewiesen wurde, das er dann zu logout.php umgeleitet wird.



wo is was mit cross scripting?

ps.
das mit der sql-injection, naja, das, is gerade nur en "test-script.

da kommt dann noch en mysql_real_escape_string() hin.

und wo sind da noch fehler?