View Single Post
Old 12-07-2012, 05:07 PM   PM User | #11
otty
New to the CF scene

 
Join Date: Dec 2012
Location: earth
Posts: 7
Thanks: 3
Thanked 0 Times in 0 Posts
otty is an unknown quantity at this point
I've had some help with the issue and have removed the validation code from the page with the form so the form action posts to process.php as in the code above, then process.php does this.
PHP Code:

<?php

if (count($_POST) <= 0)
{
    exit();
}

$aFilters = array(
    
'first_name' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[a-z- ]{3,20}$/i'),
    ),
    
'last_name' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[a-z- ]{3,20}$/i'),
    ),
    
'phone' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[0-9-]{7,20}$/i'),
    ),
    
'email' => FILTER_VALIDATE_EMAIL,
    
'year1' => array(
        
'filter' => FILTER_VALIDATE_INT,
        
'options' => array('min_range' => 1900'max_range' => 2100),
    ),
    
'make1' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[a-z0-9 -]{2,25}$/i'),
    ),
    
'model1' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[a-z0-9 -]{2,25}$/i'),
    ),
    
'vehicle_type_id1' => array(
        
'filter' => FILTER_VALIDATE_INT,
        
'options' => array('min_range' => 1),
    ),
    
'pickup_city' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[a-z0-9 -]{3,20}$/i'),
    ),
    
'pickup_state_code' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[a-zA-Z- ]{2}$/i'),
    ),
    
'dropoff_city' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[a-z0-9 -]{3,20}$/i'),
    ),
    
'dropoff_state_code' => array(
        
'filter' => FILTER_VALIDATE_REGEXP,
        
'options' => array('regexp' => '/^[a-zA-Z- ]{2}$/i'),
    ),
    
'vehicle_runs' => array(
        
'filter' => FILTER_VALIDATE_INT,
        
'options' => array('min_range' => 1),
    ),
    
'ship_via_id' => array(
        
'filter' => FILTER_VALIDATE_INT,
        
'options' => array('min_range' => 1),
    ),
    
'estimated_ship_date' => array(
        
'filter' => FILTER_CALLBACK,
        
'options' => 'strtotime',
    )
);


$aFailureNotices = array (
'first_name' => 'Invalid First Name',
'last_name' => 'Invalid Last Name',
'phone' => 'Invalid Phone Number',
'email' => 'Invalid Email Address',
'year1' => 'Invalid Year',
'make1' => 'Invalid Make',
'model1' => 'Invalid Model',
'vehicle_type_id1' => 'Invalid Vehicle Type ID',
'pickup_city' => 'Invalid Pickup City',
'pickup_state_code' => 'Invalid Pickup State Code',
'dropoff_city' => 'Invalid Dropoff City',
'dropoff_state_code' => 'Invalid Dropoff State Code',
'vehicle_runs' => 'Invalid Vehicle Runs option',
'ship_via_id' => 'Invalid Ship Via ID',
'estimated_ship_date' => 'Invalid Estimate Ship Date',
);


// Do the work now.
// Filter the input array
$filtered filter_input_array(INPUT_POST$aFilters);

function 
isEmpty($s)
{
    return empty(
$s);
}

// Pick out the empty ones (null is actually not provided, false is failed)
$aBadEntries array_filter($filtered'isEmpty');

// Get a collection of error messages
$aErrorMessages array_intersect_key($aFailureNotices$aBadEntries);

if (!empty(
$aErrorMessages))
{
    print(
'The following errors occurred: ');
    foreach (
$aErrorMessages AS $error)
    {
        print 
PHP_EOL $error;
        echo 
'<br>';
    }

echo 
'<br><center><table width="75%"><tr><td valign="top"><form action="" method="post" name="quoteForm">
<input type="hidden" name="broker_id" value="33d1918e06fd9a56a257ab44154e54e2" />
<input type="hidden" name="referrer" value="BPPC" />
<input type="hidden" name="post_back" value="http://www.shipyourcarnow.com/thankyou.php" />
<input type="hidden" name="company_name" value="SYCNB" />
<div class="column-1 left">
<h4>Contact Information:</h4>

<div class="fieldContainer">

<p><span class="redStar">*</span> First Name:
<input name="first_name" type="text" required="required" id="first_name" pattern="[A-Za-z -]{3,20}" value="" />
</p>
</div>

<div class="fieldContainer">
<p><span class="redStar">*</span> Last Name:
<input name="last_name" type="text" required="required" id="last_name" pattern="[A-Za-z -]{3,20}" value="" />

</p>
</div>

<div class="fieldContainer">
<p><span class="redStar">*</span> Phone:
<input name="phone" type="text" required="required" id="phone" pattern="[0-9 -]{7,20}" value="" />

</p>
</div>
<div class="fieldContainer">
<p><span class="redStar">*</span> Email:
<input name="email" type="text" required="required" id="email" pattern="[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.([a-zA-Z]{2,4})" value="" />
</p>
</div>
<br />
<h4>Vehicle Information:</h4>
<div class="fieldContainer">
<p><span class="redStar">*</span> Year:
<input name="year1" type="text" required="required" id="year1" pattern="[0-9 -]{2,20}" value="" />

</p>
</div>
<div class="fieldContainer">
<p><span class="redStar">*</span> Make:
<input name="make1" type="text" required="required" id="make1" pattern="[A-Za-z0-9 -]{2,25}" value="" />

</p>
</div>
<div class="fieldContainer">
<p><span class="redStar">*</span> Model:
<input name="model1" type="text" required="required" id="model1" pattern="[A-Za-z0-9 -]{2,25}" value="" />

</p>
</div>
<div class="fieldContainer">
<p><span class="redStar">*</span> Vehicle Type:
<select name="vehicle_type_id1" id="vehicle_type_id1" >
<option label="Select one" value="00">Select one</option>
<option label="Coupe" value="21">Coupe</option>
<option label="Sedan Small" value="1">Sedan Small</option>
<option label="Sedan Midsize" value="13">Sedan Midsize</option>
<option label="Sedan Large" value="2">Sedan Large</option>
<option label="Convertible" value="14">Convertible</option>
<option label="Pickup Small" value="3">Pickup Small</option>
<option label="Pickup Crew Cab" value="5">Pickup Crew Cab</option>
<option label="Pickup Full-size" value="15">Pickup Full-size</option>
<option label="Pickup Extd. Cab" value="4">Pickup Extd. Cab</option>
<option label="RV" value="22">RV</option>
<option label="Dually" value="20">Dually</option>
<option label="SUV Small" value="6">SUV Small</option>
<option label="SUV Mid-size" value="7">SUV Mid-size</option>
<option label="SUV Large" value="8">SUV Large</option>
<option label="Travel Trailer" value="23">Travel Trailer</option>
<option label="Van Mini" value="9">Van Mini</option>
<option label="Van Full-size" value="10">Van Full-size</option>
<option label="Van Extd. Length" value="16">Van Extd. Length</option>
<option label="Van Pop-Top" value="18">Van Pop-Top</option>
<option label="Motorcycle" value="19">Motorcycle</option>
<option label="Boat" value="12">Boat</option>
<option label="Other" value="11">Other</option>
</select>
</p>
</div>
<div class="fieldContainer">
<p>Vehicle Type, Other:
<input type="text" name="vehicle_type_other1" id="vehicle_type_other1" value="" style="width:100px;" />
</p>
</div>
</div></td><td valign="top">
<div class="column left">
<h4>Pickup Information:</h4>
<div class="fieldContainer">
<p><span class="redStar">*</span> City:
<input name="pickup_city" type="text" required="required" id="pickup_city" pattern="[A-Za-z0-9 -]{3,20}" value="" />
</p>
</div>
<div class="fieldContainer">
<p><span class="redStar">*</span> State:
<select name="pickup_state_code" id="pickup_state_code">
<option label="Select State" value="00">Select State</option>
<option label="Alabama" value="AL">Alabama</option>
<option label="Alaska" value="AK">Alaska</option>
<option label="Arizona" value="AZ">Arizona</option>
<option label="Arkansas" value="AR">Arkansas</option>
<option label="California" value="CA">California</option>
<option label="Colorado" value="CO">Colorado</option>
<option label="Connecticut" value="CT">Connecticut</option>
<option label="Delaware" value="DE">Delaware</option>
<option label="Dist. of Columbia" value="DC">Dist. of Columbia</option>
<option label="Florida" value="FL">Florida</option>
<option label="Georgia" value="GA">Georgia</option>
<option label="Guam" value="GU">Guam</option>
<option label="Hawaii" value="HI">Hawaii</option>
<option label="Idaho" value="ID">Idaho</option>
<option label="Illinois" value="IL">Illinois</option>
<option label="Indiana" value="IN">Indiana</option>
<option label="Iowa" value="IA">Iowa</option>
<option label="Kansas" value="KS">Kansas</option>
<option label="Kentucky" value="KY">Kentucky</option>
<option label="Louisiana" value="LA">Louisiana</option>
<option label="Maine" value="ME">Maine</option>
<option label="Maryland" value="MD">Maryland</option>
<option label="Massachusetts" value="MA">Massachusetts</option>
<option label="Michigan" value="MI">Michigan</option>
<option label="Minnesota" value="MN">Minnesota</option>
<option label="Mississippi" value="MS">Mississippi</option>
<option label="Missouri" value="MO">Missouri</option>
<option label="Montana" value="MT">Montana</option>
<option label="Nebraska" value="NE">Nebraska</option>
<option label="Nevada" value="NV">Nevada</option>
<option label="New Hampshire" value="NH">New Hampshire</option>
<option label="New Jersey" value="NJ">New Jersey</option>
<option label="New Mexico" value="NM">New Mexico</option>
<option label="New York" value="NY">New York</option>
<option label="North Carolina" value="NC">North Carolina</option>
<option label="North Dakota" value="ND">North Dakota</option>
<option label="Ohio" value="OH">Ohio</option>
<option label="Oklahoma" value="OK">Oklahoma</option>
<option label="Oregon" value="OR">Oregon</option>
<option label="Pennsylvania" value="PA">Pennsylvania</option>
<option label="Puerto Rico" value="PR">Puerto Rico</option>
<option label="Rhode Island" value="RI">Rhode Island</option>
<option label="South Carolina" value="SC">South Carolina</option>
<option label="South Dakota" value="SD">South Dakota</option>
<option label="Tennessee" value="TN">Tennessee</option>
<option label="Texas" value="TX">Texas</option>
<option label="Utah" value="UT">Utah</option>
<option label="Vermont" value="VT">Vermont</option>
<option label="Virgin Islands" value="VI">Virgin Islands</option>
<option label="Virginia" value="VA">Virginia</option>
<option label="Washington" value="WA">Washington</option>
<option label="West Virginia" value="WV">West Virginia</option>
<option label="Wisconsin" value="WI">Wisconsin</option>
<option label="Wyoming" value="WY">Wyoming</option>
<option label="Canada-Province" value="CP">Canada-Province</option>
<option label="Alberta" value="AB">Alberta</option>
<option label="British Columbia" value="BC">British Columbia</option>
<option label="Manitoba" value="MB">Manitoba</option>
<option label="New Brunswick" value="NB">New Brunswick</option>
<option label="Newfoundland" value="NL">Newfoundland</option>
<option label="NW Territories" value="NT">NW Territories</option>
<option label="Nova Scotia" value="NS">Nova Scotia</option>
<option label="Nunavut" value="NU">Nunavut</option>
<option label="Ontario" value="ON">Ontario</option>
<option label="Prince Edward Isl." value="PE">Prince Edward Isl.</option>
<option label="Quebec" value="QC">Quebec</option>
<option label="Saskatchewan" value="SK">Saskatchewan</option>
<option label="Yukon" value="YT">Yukon</option>
<option label="Other Countries" value="OC">Other Countries</option>
</select>
</p>
</div>
<div class="fieldContainer">
<p>Zip:
<input type="text" name="pickup_zip" id="pickup_zip" value="" />
</p>
</div>

<br />
<h4>Dropoff Information:</h4>
<div class="fieldContainer">
<p><span class="redStar">*</span> City:
<input name="dropoff_city" type="text" required="required" id="dropoff_city" pattern="[A-Za-z0-9 -]{3,20}" value="" />
</p>
</div>
<div class="fieldContainer">
<p><span class="redStar">*</span> State:
<select name="dropoff_state_code" id="dropoff_state_code">
<option label="Select State" value="00">Select State</option>
<option label="Alabama" value="AL">Alabama</option>
<option label="Alaska" value="AK">Alaska</option>
<option label="Arizona" value="AZ">Arizona</option>
<option label="Arkansas" value="AR">Arkansas</option>
<option label="California" value="CA">California</option>
<option label="Colorado" value="CO">Colorado</option>
<option label="Connecticut" value="CT">Connecticut</option>
<option label="Delaware" value="DE">Delaware</option>
<option label="Dist. of Columbia" value="DC">Dist. of Columbia</option>
<option label="Florida" value="FL">Florida</option>
<option label="Georgia" value="GA">Georgia</option>
<option label="Guam" value="GU">Guam</option>
<option label="Hawaii" value="HI">Hawaii</option>
<option label="Idaho" value="ID">Idaho</option>
<option label="Illinois" value="IL">Illinois</option>
<option label="Indiana" value="IN">Indiana</option>
<option label="Iowa" value="IA">Iowa</option>
<option label="Kansas" value="KS">Kansas</option>
<option label="Kentucky" value="KY">Kentucky</option>
<option label="Louisiana" value="LA">Louisiana</option>
<option label="Maine" value="ME">Maine</option>
<option label="Maryland" value="MD">Maryland</option>
<option label="Massachusetts" value="MA">Massachusetts</option>
<option label="Michigan" value="MI">Michigan</option>
<option label="Minnesota" value="MN">Minnesota</option>
<option label="Mississippi" value="MS">Mississippi</option>
<option label="Missouri" value="MO">Missouri</option>
<option label="Montana" value="MT">Montana</option>
<option label="Nebraska" value="NE">Nebraska</option>
<option label="Nevada" value="NV">Nevada</option>
<option label="New Hampshire" value="NH">New Hampshire</option>
<option label="New Jersey" value="NJ">New Jersey</option>
<option label="New Mexico" value="NM">New Mexico</option>
<option label="New York" value="NY">New York</option>
<option label="North Carolina" value="NC">North Carolina</option>
<option label="North Dakota" value="ND">North Dakota</option>
<option label="Ohio" value="OH">Ohio</option>
<option label="Oklahoma" value="OK">Oklahoma</option>
<option label="Oregon" value="OR">Oregon</option>
<option label="Pennsylvania" value="PA">Pennsylvania</option>
<option label="Puerto Rico" value="PR">Puerto Rico</option>
<option label="Rhode Island" value="RI">Rhode Island</option>
<option label="South Carolina" value="SC">South Carolina</option>
<option label="South Dakota" value="SD">South Dakota</option>
<option label="Tennessee" value="TN">Tennessee</option>
<option label="Texas" value="TX">Texas</option>
<option label="Utah" value="UT">Utah</option>
<option label="Vermont" value="VT">Vermont</option>
<option label="Virgin Islands" value="VI">Virgin Islands</option>
<option label="Virginia" value="VA">Virginia</option>
<option label="Washington" value="WA">Washington</option>
<option label="West Virginia" value="WV">West Virginia</option>
<option label="Wisconsin" value="WI">Wisconsin</option>
<option label="Wyoming" value="WY">Wyoming</option>
<option label="Canada-Province" value="CP">Canada-Province</option>
<option label="Alberta" value="AB">Alberta</option>
<option label="British Columbia" value="BC">British Columbia</option>
<option label="Manitoba" value="MB">Manitoba</option>
<option label="New Brunswick" value="NB">New Brunswick</option>
<option label="Newfoundland" value="NL">Newfoundland</option>
<option label="NW Territories" value="NT">NW Territories</option>
<option label="Nova Scotia" value="NS">Nova Scotia</option>
<option label="Nunavut" value="NU">Nunavut</option>
<option label="Ontario" value="ON">Ontario</option>
<option label="Prince Edward Isl." value="PE">Prince Edward Isl.</option>
<option label="Quebec" value="QC">Quebec</option>
<option label="Saskatchewan" value="SK">Saskatchewan</option>
<option label="Yukon" value="YT">Yukon</option>
<option label="Other Countries" value="OC">Other Countries</option>
</select>
</p>
</div>
<div class="fieldContainer">
<p>Zip:
<input type="text" name="dropoff_zip" id="dropoff_zip" value="" />
</p>
</div>

<div class="fieldContainer">
<p><span class="redStar">*</span> Ship Via:
<select name="ship_via_id" id="ship_via_id">
<option label="Select one" value="00">Select one</option>
<option label="Open" value="1">Open</option>
<option label="Enclosed" value="2">Enclosed</option>
<option label="Driveaway" value="3">Driveaway</option>
</select>
</p>
</div>
<div class="fieldContainer">
<p><span class="redStar">*</span> Est Ship Date:
<input name="estimated_ship_date" type="text" required="required" id="estimated_ship_date" style="width:80px;" pattern="[0-9]{1,2}/[0-9]{1,2}/[0-9]{4}" />
</p>
</div>
<div style="FONT-STYLE: normal; COLOR: #888888; FONT-WEIGHT: normal; font-size: 11px; margin-left: 105px; margin-top: -10px;">
MM/DD/YYYY
</div><br>
<input type="submit"></td></tr></table></center>'
;
}
else
{
    
$ch curl_init();
curl_setopt($chCURLOPT_URL"[url="http://www.jtracker.com/lead_post.php"]http://www.jtracker..../lead_post.php"[/url]);
curl_setopt($chCURLOPT_POST1);
curl_setopt($chCURLOPT_TIMEOUT100);
curl_setopt($chCURLOPT_RETURNTRANSFER1);
curl_setopt($chCURLOPT_POSTFIELDShttp_build_query($_POST));
$data curl_exec($ch);
curl_close($ch);


mysql_connect("localhost""user""password") or die("Connection Failed");
mysql_select_db("database")or die("Connection Failed");
$referrer $_POST['referrer'];
$first_name $_POST['first_name'];
$last_name $_POST['last_name'];
$email $_POST['email'];
$phone $_POST['phone'];
$vehicle_type_id1 $_POST['vehicle_type_id1'];
$pickup_city $_POST['pickup_city'];
$pickup_state_code $_POST['pickup_state_code'];
$dropoff_city $_POST['dropoff_city'];
$dropoff_state_code $_POST['dropoff_state_code'];
$vehicle_runs $_POST['vehicle_runs'];
$ship_via_id $_POST['ship_via_id'];
$estimated_ship_date $_POST['estimated_ship_date'];
$query "INSERT INTO Boat_Shipping(referrer,first_name,last_name,email,phone,vehicle_type_id1,pickup_city,pickup_state_code,dropoff_city,dropoff_state_code,vehicle_runs,ship_via_id,estimated_ship_date)VALUES('$referrer','$first_name','$last_name','$email','$phone','$vehicle_type_id1','$pickup_city','$pickup_state_code','$dropoff_city','$dropoff_state_code','$vehicle_runs','$ship_via_id','$estimated_ship_date')";
if(
mysql_query($query)){
echo 
"Your information is being processed. Please wait.";}
else{
echo 
"Database Error";}




mysql_close();

echo 
'<script type="text/javascript"> if (!window.mstag) mstag = {loadTag : function(){},time : (new Date()).getTime()};</script> <script id="mstag_tops" type="text/javascript" src="//flex.atdmt.com/mstag/site/xxxxxxxxxxxxxxxxxxxxxxxxxx/mstag.js"></script> <script type="text/javascript"> mstag.loadTag("analytics", {dedup:"1",domainId:"1570529",type:"1",actionid:"104890"})</script> <noscript> <iframe src="//flex.atdmt.com/mstag/tag/xxxxxxxxxxxxxxxxxxxxxxx/analytics.html?dedup=1&domainId=1570529&type=1&actionid=104890" frameborder="0" scrolling="no" width="1" height="1" style="visibility:hidden;display:none"> </iframe> </noscript>

<meta http-equiv="REFRESH" content="1;url=/thankyou.php">
<center><h1>Please <a href="/thankyou.php">Click Here</a> if your Thank You page does not load.</h1></center>'
;
}

?>
Now all I have to do is re-add the form so that they don't have to go back and have it populated with the values that are good. As far as I can tell, it works perfectly for the validate and submit part but don't know if the campaign tracking code works.
otty is offline   Reply With Quote