Login system skal laves om, hjælp
Hejsa.Jeg skal lave mit login system med sessions om. I øjeblikket ser det sådan her ud:
<?php
include "dbinfo.php";
if (isset($_POST['submit']))
{
$player=$_POST['player'];
$password=$_POST['password'];
$password=md5($password);
$query = "select * from v_users where username='$player' and password='$password'";
$result = mysql_query($query) or die("No te Gusta") ;
$result2=mysql_fetch_array($result);
if($result2)
{
session_start();
$id = $result2['ID'];
$_SESSION['player']=$player;
$_SESSION['id']=$id;
$yourstats="SELECT * from v_users where username='$player'";
$yourstats2=mysql_query($yourstats) or die("Could not get your stats");
$yourstats3=mysql_fetch_array($yourstats2);
mysql_query("delete from useronline where provincename='$yourstats3[provincename]'") or die("<b>MySQL Error:</b> ".mysql_error());
print "You are now logged into the game!<br><br>";
print "<A href='index.php'>pRess here to start!</a>";
$lastlogin="update v_users set lastlogin=NOW() where username='$player'";
mysql_query($lastlogin) or die("Could not update your grendellarcher stats");
$hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$sqlattack = "INSERT into v_logs (user_id, ip, browser, referer, tidspunkt, host) VALUES ('$yourstats3[ID]','$REMOTE_ADDR','$HTTP_USER_AGENT','$HTTP_REFERER',NOW(),'$hostname')";
mysql_query($sqlattack) or die(mysql_error());
$timeoutseconds = 1800;
$timestamp=time();
$timeout=$timestamp-$timeoutseconds;
mysql_query("insert into useronline values('$timestamp','$REMOTE_ADDR','$PHP_SELF','$yourstats3[ID]','$yourstats3[provincename]','$timestamp')") or die("<b>MySQL Error:</b> ".mysql_error());
mysql_query("delete from useronline where timestamp<$timeout") or die("<b>MySQL Error:</b> ".mysql_error());
}
else
{
print "Wrong username or code please try again!";
print_r($_SESSION);
}
}
?>
og det er meget dårligt synes jeg selv, men jeg ved ikke helt hvordan jeg kan forbedre det. Især vil jeg gerne have lavet det stykke om som den sætter users online. Fordi det virker meget dårligt.
Jeg kunne godt tænke mig at brugeren blev logget ud efter 30 minutters inaktivitet og at man max. kunne være online i 2 timer af gangen.
Håber virkelig at der er nogle som vil hjælpe med at forbedre dette :)
