Here is the code for the PHP Form Vaildation & the datepicker Vaildation… I have just remove some of the Vaildation, the Email field and Message comment field from the code because its a repeat of the others and makes the code here long to read.
All the code works…but if i dont select a date from the picker it still gets sent and emailed, with no date…
Running each Validation on there own web page they both work, but like i say run them together and just the Php works.
<?php
// Set email variables
$email_to = ‘andy_tvw@yahoo.co.uk’;
$email_subject = ‘Form submission’;
// Set required fields
$required_fields = array(‘fullname’,‘fulladdress’,‘email’,‘comment’);
// set error messages
$error_messages = array(
‘fullname’ => ‘Please enter a Name to proceed.’,
‘fulladdress’ => ‘Please enter your Contact Address 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: ' . "\
";
// simple email content
foreach($_POST as $key => $value) {
if($key != 'submit') $email_content .= $key . ': ' . $value . "\
";
}
// 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(‘/[1]+@([-a-z0-9]+\.)+[a-z]{2,}$/i’, $email))? TRUE : FALSE;
}
function remove_email_injection($field = FALSE) {
return (str_ireplace(array(“\r”, "
", “%0a”, “%0d”, “Content-Type:”, “bcc:”,“to:”,“cc:”), ‘’, $field));
}
?>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
<html xmlns=“http://www.w3.org/1999/xhtml” xml:lang=“en” lang=“en”>
<head>
<link href="contact/css/contactform.css" rel="stylesheet" type="text/css" />
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/redmond/jquery-ui.css" rel= "stylesheet" type="text/css"/>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/mootools/1.3.0/mootools-yui-compressed.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.js"></script>
<script src="http://jzaefferer.github.com/jquery-validation/jquery.validate.js"></script>
<script type="text/javascript">
var nameError = '<?php echo $error_messages['fullname']; ?>';
var fulladdress ='<?php echo $error_messages['fulladdress']; ?>';
var emailError = '<?php echo $error_messages['email']; ?>';
var commentError = '<?php echo $error_messages['comment']; ?>';
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf(“#”)!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
</script>
<title>Reservations and booking form</title>
</head>
<body onload=“MM_preloadImages(‘contact/images/x.png’)”>
<body style=“font-size:62.5%;”>
<div id=“formWrap”>
<h2>Bookings & Reservations</h2>
<div id=“form”>
<?php if($form_complete === FALSE): ?>
<form action"contact.php" method=“post” id=“comments_form”>
<div class=“row”>
<div class=“label”>Full Name</div> <!–end . label –>
<div class=“input”>
<input type=“text” id=“fullname” class=“detail” name=“fullname” value="<?php echo isset($_POST[‘fullname’])? $_POST[‘fullname’] : ‘’; ?>
" />
<?php if(in_array(‘fullname’, $validation)): ?><span class=“error”><?php echo $error_messages[‘fullname’]; ?></span><?php endif; ?>
</div> <!-- end . input –>
<div class=“context”>Message here</div> <!–end . context –>
</div> <!-- end .row –>
<!-- End of Your Name Block –>
<!-- Start of Your Address Block –>
<div class=“row”>
<div class=“label”>Home Address</div> <!–end . label –>
<div class=“input”>
<input type=“text” id=“fulladdress” class=“detail” name=“fulladdress” value="<?php echo isset($_POST[‘fulladdress’])? $_POST[‘fulladdress’] : ‘’; ?>
" /><?php if(in_array(‘fulladdress’, $validation)): ?><span class=“error”><?php echo $error_messages[‘fulladdress’]; ?></span><?php endif; ?>
</div> <!-- end . input –>
<div class=“context”>e.g. 123 Main Street </div> <!–end . context –>
</div> <!-- end .row –>
<!-- End of Your Address Block –>
<!-- Start of datepicker –>
<script>
$(document).ready(function()
{
$(“#datepicker”).datepicker();
});
</script>
<script>
$(function() {
$(‘#myForm’).validate({
rules: {
‘Your Check In Date Is’: ‘required’,
‘Your Check Out Date Is’: ‘required’
}
});
$.datepicker.setDefaults({dateFormat: ‘DD, d MM yy’, autoSize: true,
minDate: -0, maxDate: ‘+1M +05D’, showOn: ‘button’,
buttonImage: ‘/contact/images/calendar.gif’, buttonImageOnly: true, });
$(‘input[name=“Your Check In Date Is”],input[name=“Your Check Out Date Is”]’).datepicker();
});
</script>
<!-- End of datepicker –>
<form method="post" id="myForm">
<label for="datepicker">Select Your Check In Date</label>
<input name="Your Check In Date Is" maxlength="30" class="text ui-widget-content ui-corner-all" />
<label for="datepicker">Select Your Check Out Date</label>
<input name="Your Check Out Date Is" maxlength="30" class="text ui-widget-content ui-corner-all" />
<!-- Start of submit –>
<div class=“submit”>
<input type=“submit” id=“submit” name=“submit” value=“Click To Comfirm Your Booking Details” />
</div> <!-- end .submit –>
<!-- End of Submit –>
</form>
<div id=“footer”>
<p>© <?php echo date(‘Y’); ?>Copyright Webber’s InterConinental Tours… All rights reserved. ha ha ha</p>
</div><!-- end footer –>
<?php else: ?>
<p style=“font-size:35px; font-family:Arial, Helvetica, sans-serif; color:#255E67; margin-left:25px;”>You are now being redirected to the secure payment site</p>
<script type=“text/javascript”>
setTimeout(‘ourRedirect()’, 5000)
function ourRedirect(){
location.href=‘http://philippines4u.co.uk/PayPal Manila Condo form.html’
}
</script>
<?php endif; ?>
</div> <!–end #form –>
</div> <!-- end formWrap –>
</body>
</html>
^@\s ↩︎