marquel2k69 Posted May 28, 2012 Share Posted May 28, 2012 Hi everyone I am trying to write a login script that lives inside of my universal header I can't get the remember me function to work nor can I start the session at the start of my script so i've commented out those lines I was able to get the script to log me in working but when I click any of the links in my header and the new page loads I think I am no longer logged in I would also like some sort of welcome text to display within the header upon successful login I've looked for answers on the web but can only find tuts on separate login page that redirects to the home page after a successful login <?php // Start Session to enable creating the session variables below when they log in //session_start(); // Initialize some vars $errorMsg = ''; $username = ''; $password = ''; if (isset($_POST['username'])) { $username = $_POST['username']; $password = $_POST['password']; $username = stripslashes($username); $password = stripslashes($password); $username = strip_tags($username); $password = strip_tags($password); // error handling conditional checks go here if ((!$username) || (!$password)) { $errorMsg = 'The Username or the Password field cannot be empty'; } else { // Error handling is complete so process the info if no errors include 'scripts/connect_to_mysql.php'; // Connect to the database $username = mysql_real_escape_string($username); // After we connect, we secure the string before adding to query $password = mysql_real_escape_string($password); // After we connect, we secure the string before adding to query $password = md5($password); // Add MD5 Hash to the password variable they supplied after filtering it // Make the SQL query $sql = mysql_query("SELECT * FROM myMembers WHERE username='$username' AND password='$password' AND email_activated='1'"); $login_check = mysql_num_rows($sql); // If login check number is greater than 0 (meaning they do exist and are activated) if($login_check > 0){ while($row = mysql_fetch_array($sql)){ // Create session var for their raw id $id = $row["id"]; $_SESSION['id'] = $id; // Create the idx session var $_SESSION['idx'] = base64_encode("g4p3h9xfn8sq03hs2234$id"); // Create session var for their username $username = $row["username"]; $_SESSION['username'] = $username; /* Create session var for their email $useremail = $row["email"]; $_SESSION['useremail'] = $useremail;*/ // Create session var for their password $userpass = $row["password"]; $_SESSION['userpass'] = $userpass; mysql_query("UPDATE myMembers SET last_log_date=now() WHERE id='$id' LIMIT 1"); } // close while /* // Remember Me Section if($remember == "yes"){ $encryptedID = base64_encode("g4enm2c0c4y3dn3727553$id"); setcookie("idCookie", $encryptedID, time()+60*60*24*100, "/"); // Cookie set to expire in about 30 days setcookie("passCookie", $pass, time()+60*60*24*100, "/"); // Cookie set to expire in about 30 days } // All good they are logged in, send them to homepage then exit script header("location: index.php?test=$id"); exit();*/ } else { // Run this code if login_check is equal to 0 meaning they do not exist $errorMsg = "Incorrect login data, please try again"; } } // Close else after error checks } //Close if (isset ($_POST['username'])){ ?> I hope I have not violated any rule this is my first post and as you can tell i'm also a noob thanks in advance for any help Quote Link to comment https://forums.phpfreaks.com/topic/263249-i-have-read-the-header-error-post-but-i-am-still-having-problems/ Share on other sites More sharing options...
scootstah Posted May 28, 2012 Share Posted May 28, 2012 You don't stay logged in because you commented out the session. What is the error? Quote Link to comment https://forums.phpfreaks.com/topic/263249-i-have-read-the-header-error-post-but-i-am-still-having-problems/#findComment-1349203 Share on other sites More sharing options...
marquel2k69 Posted May 28, 2012 Author Share Posted May 28, 2012 I commented out session_start() because if I don't I get this error in the browser when my page loads Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/content/85/9338985/html/index.php:40) in /home/content/85/9338985/html/header_template.php on line 4 Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/content/85/9338985/html/index.php:40) in /home/content/85/9338985/html/header_template.php on line 4 line 40 is where I include_once the header template that is weird to me cause its like its looping on itself Quote Link to comment https://forums.phpfreaks.com/topic/263249-i-have-read-the-header-error-post-but-i-am-still-having-problems/#findComment-1349220 Share on other sites More sharing options...
scootstah Posted May 28, 2012 Share Posted May 28, 2012 Post line 40 of index.php Quote Link to comment https://forums.phpfreaks.com/topic/263249-i-have-read-the-header-error-post-but-i-am-still-having-problems/#findComment-1349345 Share on other sites More sharing options...
maxudaskin Posted May 29, 2012 Share Posted May 29, 2012 The header() function must be called before the <head> section of the HTML is echoed. Make your PHP code run first, then output HTML. Quote Link to comment https://forums.phpfreaks.com/topic/263249-i-have-read-the-header-error-post-but-i-am-still-having-problems/#findComment-1349373 Share on other sites More sharing options...
marquel2k69 Posted May 29, 2012 Author Share Posted May 29, 2012 line 40 is just a php include for the header file i'm trying to process <?php include_once"header_template.php";?> Quote Link to comment https://forums.phpfreaks.com/topic/263249-i-have-read-the-header-error-post-but-i-am-still-having-problems/#findComment-1349379 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.