11. januar 2005 - 20:12Der er
13 kommentarer og 1 løsning
Session problemer
Hejsa.
Jeg giver en session ved login. Men denne session forsvinder lige pludselig fra brugeren selvom han er aktiv. Jeg giver den ikke andre steder og dette har ikke været et problem før. Men efter jeg har skiftet server forsvinder sessions.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
okay dette løste ikke mit problem. Men jeg har lige skiftet til ny server og siden da har det ikke virket. Men det gamle system blev brugeren logget ud når session forsvandt men med den nye bliver brugeren online og alle script er bare tomme fordi den sessions med brugernavn er tomt, det er underligt ?!
OKay prøver lige at give lidt mere info: Sådan her giver jeg sessions ved login: session_start(); $_SESSION['pass'] = $password1; $_SESSION["id"] = $yourstats3[username];
Og sådan her ser det script der tjekker om de er logget ind ud: <?PHP // get the cookievars if they exist $rememberCookieUname = $_SESSION["id"]; $rememberCookiePassword = $_SESSION['pass'];
// the security header which should be included in al memberpaga's // first we include the configuration file which contains the database data // also it will connect to the database. include("config.php");
// tell we want to work with sessions session_start(); // the $HTTP_SESSION_VARS[id] in this query indicates that we want to retrieve the username from the session. $query = "Select * from v_users where BINARY username like '".$_SESSION['id']."' And password = '".$_SESSION['pass']."'"; $result = mysql_query($query); // if there are results check it the accesslevel is high enough. If there aren't results tell the user to log-in and stop (die) after that. if ($row = mysql_fetch_array($result)){ }else{ // if there are no results, check for an cookie if ($rememberCookiePassword != "" && $rememberCookieUname != ""){ // validate the cookie $query = "Select * from v_users where BINARY username like '$rememberCookieUname'"; $result = mysql_query($query); // if there are results check it the accesslevel is high enough. If there aren't results tell the user to log-in and stop (die) after that. $yourstats="SELECT * from users where BINARY username LIKE '$rememberCookieUname'"; $yourstats2=mysql_query($yourstats) or die("Could not get your stats"); $yourstats3=mysql_fetch_array($yourstats2); if ($row = mysql_fetch_array($result)){ // check the password if ($row["password"] == $rememberCookiePassword){ // if the user has a valid cookie, set the session vars: // put the password in the session $_SESSION['pass'] = $rememberCookiePassword; // put the username in the session $_SESSION["id"] = $yourstats3[username]; }else{echo('<script type=\'text/javascript\'>parent.location.href=\'login.php\';</script>');} }else{echo('<script type=\'text/javascript\'>parent.location.href=\'login.php\';</script>');} }else{echo('<script type=\'text/javascript\'>parent.location.href=\'login.php\';</script>');} } // Below we set al variables which can be used in pages, things like the current logged user and his or hers level
// This will set the user_currently_loged variable // first we remove the htmlcode from the username saved in a cookie $user_currently_loged = htmlspecialchars($_SESSION["id"],ENT_NOQUOTES); // Then we replace \" with " $user_currently_loged = str_replace ('\"', """, $user_currently_loged); $user_currently_loged = str_replace ("\'", "'", $user_currently_loged); // and a variable where u get the plain username $user_currently_loged_plain = $_SESSION["id"]; include("register_onlineusers.php"); ?>
Og jeg bruger et frameset til at loade alle sider i. Jeg har includeret scriptet der checker på alle sider. Kan det have noget at gøre med at der ikke sker et reload af browseren og at den så mister sessions eller sådan noget lignende. For denne her bliver pludeselig tom: $user_currently_loged = htmlspecialchars($_SESSION["id"],ENT_NOQUOTES);
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.