if you want to keep the user logged in, you will need to add additional code to store the users session variable into an application variable, the reset it once the session is destroyed. for example, if the User Session variable is name "UserID", the code would look like:
<?php
// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();
//store the user session
$userSession = $_SESSION['UserID'];
// Unset all of the session variables.
$_SESSION = array();
// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (ini_get("session.use_cookies")) {
$params = session_get_cookie_params();
setcookie(session_name(), '', time() - 42000,
$params["path"], $params["domain"],
$params["secure"], $params["httponly"]
);
}
// Finally, destroy the session.
session_destroy();
unset($_SESSION);
session_regenerate_id();
//reset user session
$_SESSION['UserID'] =$userSession;
?>
The above code also contains some extra code that should fix the error you are getting. You will need to change $_SESSION['UserID'] to reflect the name of the session variable you wish to keep.