I am trying learning about session and security, and the first step seems to strengthen the session by using session_regenerate_id()
unfortunately, a good documentation has not being given as to how, and why we should be even using it in the first place. So, I checked some answers like this Using Session_regenerate_id() in SO, which actually fail to provide any proper usage and how it protects the page from session fixation/hijacking.
I am always using something like this (for simple login script, I know about mysql injection, this is example)
if($_POST){
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$query = mysql_query("SELECT *
FROM users
WHERE username = '$username'
AND password = '$password' ");
$row = mysql_fetch_array($query);
if($row){
$_SESSION['LoggedIn'] = md5($username);
}
Now, I check using this method to verity and give accesss to logged in users
if(isset($_SESSION['LoggedIn']) && !empty($_SESSION['LoggedIn'])){
//giv access to secured page
}else{
//redirect to login page
}
So, my question is how does session_regenerate_id()
help me strength the session and how to use it properly