Jump to content

Redirect Q - Warning: Cannot modify header information


beaner_06

Recommended Posts

How would I do a redirect on a contact form after a user successfully submits the form. I tried doing a header Location:, but I received that error. Basically I don't want to display just the Success! text, I want to redirect. Here is my code:

 

<?php
if(isset($_POST['submit'])) {

$to = "[email protected]";
$subject = "ryanbuening.com Contact Form";
$firstname_field = $_POST['first'];
$lastname_field = $_POST['last'];
$email_field = $_POST['email'];
$comments = $_POST['comments'];

$body = " From: $firstname_field $lastname_field\n E-Mail: $email_field\n Comments: $comments";

echo "Success!";
header ("Location: http://www.ryanbuening.com");
mail($to, $subject, $body);

} else {

echo "blarg!";

}
?>

echo "Success!";
header ("Location: http://www.ryanbuening.com");

 

Chicken and egg problem ;) You want to display a success text however you also want to redirect the user but you can't as you have already sent information :D How about:

<a href="somewhere">Proceed</a>

 

Or before you output succes:

header('Refresh: 0; URL=somewhere');

 

Increase 0 if it needs to wait longer ;)

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.