- This topic is empty.
-
AuthorPosts
-
May 16, 2012 at 10:33 am #38084michaeloneillMember
I have the contact form from the downloads section of this site on my website. However, I keep getting people clicking send without actually filling out the form. I presume people are just interested to see what happens! Is there any way I can make the fields mandatory so the form cannot be submitted unless they are filled out?
A template of some sort would be most helpful. My PHP and Javascript skills are very weak!
Thanks!
May 16, 2012 at 3:04 pm #102913JohnMotylJrParticipantJust wrote this for a friend, its javascript and validates by testing regular expressions. If you need an in depth explanation just let me know and i can comment the shit out of this. But keep in mind that Javascript can be disabled and should have a fallback, server side (php, asp.net, etc).
|| I || LOVE || YOU ||
May 16, 2012 at 3:09 pm #102914JohnMotylJrParticipantFor PHP, this is a test form i played around with a while back == contact.php
The workin example is on one of my garbage free sits…
http://jmotyljr.atwebpages.com/This one, however is not my code. This is a dreamweaver tutorial site or something. Information link:
– Contact Form Designed by James Brand @ dreamweavertutorial.co.uk –>
– Covered under creative commons license – http://dreamweavertutorial.co.uk/permissions/contact-form-permissions.htm –>
// Set email variables
$email_to = '[email protected]';
$email_subject = 'Form submission';
// Set required fields
$required_fields = array('fullname','email','comment');
// set error messages
$error_messages = array(
'fullname' => 'Please enter a Name to proceed.',
'email' => 'Please enter a valid Email Address to continue.',
'comment' => 'Please enter your Message to continue.'
);
// Set form status
$form_complete = FALSE;
// configure validation array
$validation = array();
// check form submittal
if(!empty($_POST)) {
// Sanitise POST array
foreach($_POST as $key => $value) $_POST[$key] = remove_email_injection(trim($value));
// Loop into required fields and make sure they match our needs
foreach($required_fields as $field) {
// the field has been submitted?
if(!array_key_exists($field, $_POST)) array_push($validation, $field);
// check there is information in the field?
if($_POST[$field] == '') array_push($validation, $field);
// validate the email address supplied
if($field == 'email') if(!validate_email_address($_POST[$field])) array_push($validation, $field);
}
// basic validation result
if(count($validation) == 0) {
// Prepare our content string
$email_content = 'New Website Comment: ' . "nn";
// simple email content
foreach($_POST as $key => $value) {
if($key != 'submit') $email_content .= $key . ': ' . $value . "n";
}
// if validation passed ok then send the email
mail($email_to, $email_subject, $email_content);
// Update form switch
$form_complete = TRUE;
}
}
function validate_email_address($email = FALSE) {
return (preg_match('/^[^@s]+@([-a-z0-9]+.)+[a-z]{2,}$/i', $email))? TRUE : FALSE;
}
function remove_email_injection($field = FALSE) {
return (str_ireplace(array("r", "n", "%0a", "%0d", "Content-Type:", "bcc:","to:","cc:"), '', $field));
}
?>
Contact Form
We Appreciate Your Feedback
Thank you for your Message!
May 16, 2012 at 5:27 pm #102926michaeloneillMemberThanks alot _John_ That was most helpful of you!
May 16, 2012 at 7:54 pm #102931JohnMotylJrParticipantYour welcome man, kinda perfect timing actually :) Like i said, if you need anything to be clarified just let me know :)
-
AuthorPosts
- The forum ‘Other’ is closed to new topics and replies.