ShoeLace1291 Posted April 1, 2007 Share Posted April 1, 2007 How would I set a cookie to remember a user's information if they have a checkbox marked? This is my current login script: <?php require_once('config.php'); // Use session variable on this page. This function must put on the top of page. session_start(); $message=""; //Login Section. $Login=$_POST['submit']; if($Login){ // If clicked on Login button. $username=$_POST['username']; $password=md5($_POST['password']); // Encrypt password with md5() function. // Check matching of username and password. $result=mysql_query("select * from vbb_members where username='$username' and password='$password'"); if(mysql_num_rows($result)!='0'){ // If match. session_register("username"); // Craete session username. mysql_query("UPDATE vbb_members SET logged_in=logged_in+1 WHERE username='$username'"); header("location:index.php"); // Re-direct to main.php exit; }else{ // If not match. $message="--- Incorrect Username or Password ---"; } } // End Login authorize check. ?> <? echo $message; ?> <table> <tr> <td>User : </td> <td><input name="username" type="text" id="username" /></td> </tr> <tr> <td>Password : </td> <td><input name="password" type="password" id="password" /></td> </tr> </table> <input name="Login" type="submit" id="Login" value="Login" /> </form> </body> </html> Quote Link to comment https://forums.phpfreaks.com/topic/45146-cookies/ Share on other sites More sharing options...
wildteen88 Posted April 1, 2007 Share Posted April 1, 2007 You add in the checkbox in to your form and give it a name of rememberMe and value of true. THe following html should do: [code]<input type="checkbox" name="rememberMe" value="true" /> Then in your PHP code when you process the data submitted from the form you check that $_POST['rememberMe'] exists and equals to 'true', if it exists and equals to 'true' then set the rememberMe cookie. Here is your new code: <?php require_once('config.php'); // Use session variable on this page. This function must put on the top of page. session_start(); $message = ''; //Login Section. if(isset($_POST['username']) && isset($_POST['password'])) { $username = $_POST['username']; $password = md5($_POST['password']); // Encrypt password with md5() function. // RemeberMe Feature if(isset($_POST['rememberMe']) && $_POST['rememberMe'] == 'true') { // prepare cookie data $c['username'] = $username; $c['password'] = $password; // // set the cookie // name: remeberMe // expire after 1 year setcookie('rememberMe', serialize($c), time()+3600*24*365); } // Check matching of username and password. $sql = "SELECT 8 FROM vbb_members WHERE username='$username' AND password='$password'"; $result = mysql_query($sql); // If match. if(mysql_num_rows($result)!= 0) { $_SESSION['username'] $username; // create session username mysql_query("UPDATE vbb_members SET logged_in=logged_in+1 WHERE username='$username'"); header("Location: index.php"); // Re-direct to main.php exit; } // If not match. else { $message = "--- Incorrect Username or Password ---"; } } // End Login authorize check. ?> <? echo $message; ?> <table> <tr> <td>User : </td> <td><input name="username" type="text" id="username" /></td> </tr> <tr> <td>Password : </td> <td><input name="password" type="password" id="password" /></td> </tr> </table> Remeber Me? <input type="checkbox" name="rememberMe" value="true" /> <input name="Login" type="submit" id="Login" value="Login" /> </form> </body> </html> The code will set a cookie called 'rememberMe' when you want to use the cookie you want to use the $_COOKIE['remeberMe'] variable. However before you can use the values set in the cookie you must unserialize the data, as I serialized the array when setting the cookie So in order to use the cookie data you'll want to do this: // unserialize the serialized data in the cookie // rm short for rememberMe $rm = unserialize($_COOKIE['rememberMe']); // when you unserialize the cookie the $rm variable will hold an array 'username' and 'password': //Username variable: $rm['username'] <--- contains the username string //Password variable: $rm['password '] <--- contains the md5 hash of the password [/code] Quote Link to comment https://forums.phpfreaks.com/topic/45146-cookies/#findComment-219227 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.