Hallo, ik heb een HandleForm gemaakt voor een reactieformulier. Het werkt allemaal ik krijg een mail met de ingevulde gegevens.
Maar als de gebruiker heeft gereageerd dan blijft de site op de HandleForm.php hangen. Wat voor script ofzo kan ik onderaan de pagina zetten zodat ze weer automatisch worden gelinkt naar de website. Het liefst ook met een bericht dat de formulier correct is verzonden.

---HandleForm.php---
<?

$name = $_POST["Name"];

$topic = $_POST["Topic"];

$email = $_POST["Email"];

$content = $_POST["Content"];



$to = "[email protected]";



//send email to comittee

$senderemail = $email;

$sendername = $name;

$recipient = $to;

$subject = "Reactie via www.niekweevers.nl";;

$mailheader = "Van: ".$sendername."\n";

$mailheader .= "Reply-To: ".$senderemail."\n\n";

$message = "Via het formulier op de Over mijpagina op www.niekweevers.nl is de volgende reactie ontvangen:\n\n";

$message .= "Van: ".$name."\n";

$message .= "Email: ".$email."\n";

$message .= "Onderwerp: ".$topic."\n";

$message .= "Vraag/opmerking: ".$content."\n\n";

$message .= "Er is een autoamatische email verzonden aan ".$name." met daarin geschreven dat de reactie is ontvangen en er - indien daarom

gevraagd - spoedig een reactie van het bestuur zal volgen.\n";

mail($recipient, $subject, $message, $mailheader) or die ("Fout opgetreden bij versturen formulier naar Niek Weevers. Neem contact op met [email protected]");

?>
probeer een header
dus
header (location.php) ofzo ik weet niet helemaal hoe het zit
kan het niet met een action ofzo?
ik heb het
header("Location: next.php");
zet dit aan het einde zegmaar als je alles van het form heb ingeleverd
ik doe het meestal zo:

<META HTTP-EQUIV="refresh" CONTENT="2; URL=volgende.php">
@niels

Wat jij doet is client-sided en zal dus inhouden dat je bijvoorbeeld een bericht kunt laten zien dat het gelukt is en dan te refreshen naar een nieuwe pagina.

Wat peter doet is server-sided en zal dus direct uitgevoerd worden, je kunt geen melding tonen dat het gelukt is op een tussenpagina, en de gebruiker zal nooit doorhebben dat hij op deze pagina geweest is.
@PurpleMadness

Als ik me niet vergis is dat gewoon hetzelfde als:
<?php
sleep(2);
header("Location: http://www.google.nl/";);
?>

Want header is en blijft gevoelig of er wel of niet al headers gestuurd zijn. Dus het plaatsen van een "geslaagd" message kan op deze manier nog steeds niet.
@Gijs: dat vind ik net het handige er aan, je kan bevoorbeeld zeggen:

je profiel is succesvol geupdate.
(en nu word het doorgestuurd)
Gijs (Armorad) schreef op 04.04.2006 15:42
@PurpleMadness

Als ik me niet vergis is dat gewoon hetzelfde als:
<?php
sleep(2);
header("Location: http://www.google.nl/";);
?>

Want header is en blijft gevoelig of er wel of niet al headers gestuurd zijn. Dus het plaatsen van een "geslaagd" message kan op deze manier nog steeds niet.

Maar jij stuurt toch ook headers? ¬¬
Gebruik dan gewoon ob

Reageren