Copy link to clipboard
Copied
Hi, I am new to web design, and am trying to set up a web site for a study project. On the site I have a couple of forms I created in DW, and a PHP script to send the data via email. Easy enough!
However I have an issue, the PHP script will only divert to the success url if the user enters data into all the form elements. However, there are no required fields in the form, the script does send the email irrespective of data input into the form, it just doesn't divert to the success URL.
Can anyone please give me some advice on this????
Thanks in advance!
Copy link to clipboard
Copied
use javascript or php validation or both. google php form validation, or use the built in spry validation tools.
Copy link to clipboard
Copied
Thanks for your reply,
Do you think this will enable the form to divert to the success url even if the user hasn't entered data into all the fields, If I validate say one or two?
Many Thanks
Ash Bullman
Copy link to clipboard
Copied
yes
Copy link to clipboard
Copied
Hi again,
I tried adding validation in, but its the same, if all form fields are filled in, then it goes to the success url, if 1 or more boxes left empty, it just gets a 500 internal server error.
Many Thanks
Ash Bullman
Copy link to clipboard
Copied
Please post your code. It's hard to tell what's going on but it may be a simple fix.
Copy link to clipboard
Copied
Hi,
The code is
<?php // Subject and Email Variables $email_to = "enquiries@kyu-images.com"; $email_subject = "General Enquiry"; $thankyou_url = "http://www.kyu-images.com/contact-us/email_sent.html"; // Gathering Data Variables $nameField = $_POST["name"]; $email_from = $_POST["email"]; $address1Field = $_POST["address1"]; $address2Field = $_POST["address2"]; $townField = $_POST["town"]; $postcodeField = $_POST["postcode"]; $phoneField = $_POST["phone"]; $serviceField = $_POST["service"]; $brochureField = $_POST["brochure"]; $aboutusField = $_POST["aboutus"]; $oursiteField = $_POST["oursite"]; $commentsField = $_POST["comments"]; $headers = "From: $email_from . \r\n"; $headers .= "Reply-To: $email_from . \r\n"; $headers .= "Content-type: text/html\r\n"; $message = <<<EOD <br><hr><br> Name: $nameField <br> Email: $email_from <br> First Address Line: $address1Field <br> Second Address Line: $address2Field <br> Address Town: $townField <br> Postcode: $postcodeField <br> Telephone: $phoneField <br> Service Enquiry: $serviceField <br> Send Brochure: $brochureField <br> How Did They Find Us: $aboutusField <br> Did They Like Our Site: $oursiteField <br> Client Comments: $commentsField <br> <br><hr><br>
EOD;
ini_set("sendmail_from", $email_from);
$sent = mail($email_to, $email_subject, $message, $headers, "-f" . $email_from);
if($sent) {
header("Location: " . $thankyou_url); // Redirect customer to thankyou page
} else {
// The mail didn't send, display an error.
echo "There has been an error sending your message. Please try later.";
}
?