jackcoder Posted August 13, 2014 Share Posted August 13, 2014 Hello, I have an error on multiple pages which looks much like this. If anyone can help that would be gratefully appreciated. I would also like to ask if you may give me an explanation as to why it is occurring and not just a solution. Also when I take the second header out the error disappears. Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\blog\blog_display_post.php:47) in C:\xampp\htdocs\blog\comments.php on line 49 Here is my code: if(strlen($email) > 5){ mysqli_query($con, "INSERT INTO emails (email) VALUES ('$email')"); mysqli_query($con, "INSERT INTO comments (com_name, com_com, com_date, com_blog) VALUES ('$name', '$comment', '$date', '$postid')"); header("Location: index.php"); }else{ mysqli_query($con, "INSERT INTO comments (com_name, com_com, com_date, com_blog) VALUES ('$name', '$comment', '$date', '$postid')"); header("Location: index.php"); } } } Quote Link to comment https://forums.phpfreaks.com/topic/290439-warning-cannot-modify-header-information/ Share on other sites More sharing options...
ginerjm Posted August 13, 2014 Share Posted August 13, 2014 (edited) You cannot send a header once ANY information of ANY kind (characters,blanks, empty lines, etc.) has been output. The message is telling you EXACTLY what line of your code is sending something. Stop it. Edited August 13, 2014 by ginerjm Quote Link to comment https://forums.phpfreaks.com/topic/290439-warning-cannot-modify-header-information/#findComment-1487718 Share on other sites More sharing options...
CroNiX Posted August 13, 2014 Share Posted August 13, 2014 Also, why the duplicate code? You are doing the same insert into comments AND the same header() regardless of your strlen() check. if(strlen($email) > 5){ //do the insert for email } //do the insert for comment //do redirect Quote Link to comment https://forums.phpfreaks.com/topic/290439-warning-cannot-modify-header-information/#findComment-1487721 Share on other sites More sharing options...
cyberRobot Posted August 14, 2014 Share Posted August 14, 2014 Out of curiosity, what's the goal behind the strlen() check? Is it just checking that $email contains a somewhat valid email address? Perhaps you're already aware of this, but PHP has a built-in function for validating email addresses: http://php.net/manual/en/filter.examples.validation.php Quote Link to comment https://forums.phpfreaks.com/topic/290439-warning-cannot-modify-header-information/#findComment-1487758 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.