Forum Moderators: open
here is the code:-
PHP CODE:
<?php
$connection = mysql_connect("localhost","root","autodeskmaya") or die("error connect");
mysql_select_db("online_bus_project");
if(isset($_POST['submit']))
{
header("location: [localhost...]
$first_name = $_POST["fname"];
$card_number = $_POST["card_number_field1"] . $_POST["card_number_field2"] . $_POST["card_number_field3"] . $_POST["card_number_field4"];
$expiry_date = $_POST["card_exp_month"] . $_POST["card_exp_year"];
$query = "INSERT INTO payment (name, number, expire) VALUES('$first_name', '$card_number','$expiry_date')";
mysql_query($query, $connection) or die(mysql_error());
}
?>
HTML FORM:
<div class="style3" id="payment_box">
<form name="payment" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<center>Make Payment<br />
</center>
<br /><br /><br />
Card Holder's Name: <input name="fname" type="text" id="fname" />
<br /><br />
Card Number:
<INPUT name="card_number_field1" type="text" id="card_number_field1" size="4" maxlength="4" />
<INPUT name="card_number_field2" type="text" id="card_number_field2" size="4" maxlength="4">
<INPUT name="card_number_field3" type="text" id="card_number_field3" size="4" maxlength="4">
<INPUT name="card_number_field4" type="text" id="card_number_field4" size="4" maxlength="4">
<br /><br />
Card Expiry Date:   <INPUT name="card_exp_month" type="text" id="card_exp_month" size="2" maxlength="2">
/
<INPUT name="card_exp_year" type="text" id="card_exp_year" size="4" maxlength="4">
</center><br /><br />
<center><input name="submit" type="submit" onclick="MM_validateForm('fname','','R','card_number_field1','', 'RisNum','card_number_field2','','RisNum','card_number_field3','', 'RisNum','card_number_field4','','RisNum','card_exp_month','', 'RisNum','card_exp_year','','RisNum'); return document.MM_returnValue" value="Submit" />
</form>
</div>
form is validate thats why it contains javascript.
these two fields are the expiration in which i want that alert
<INPUT name="card_exp_month" type="text" id="card_exp_month" size="2" maxlength="2">/<INPUT name="card_exp_year" type="text" id="card_exp_year" size="4" maxlength="4">
one is for month and the other is for year?
[edited by: whoisgregg at 6:25 pm (utc) on May 26, 2009]
[edit reason] Fixed sidescroll. :) [/edit]
<input name="submit" type="submit" onclick="MM_validateForm('fname','','R','card_number_field1','', 'RisNum','card_number_field2','','RisNum','card_number_field3', '','RisNum','card_number_field4','','RisNum','card_exp_month','', 'RisNum','card_exp_year','','RisNum'); return document.MM_returnValue" value="Submit" />
<input name="submit" type="submit" value="Submit" />
Then add this script in to the head of the document:
<script type="text/javascript">function validExpiryDate(form,monthInputName,yearInputName) {
var month = form[monthInputName].value,
year = form[yearInputName].value,
d = new Date(),
currentYear = d.getFullYear(),
currentMonth = d.getMonth() + 1; //need to add 1, getMonth returns 0-11
if (!/^\d{1,2}$/.test(month) ¦¦ !/^\d{4}$/.test(year)) {
alert('Improper entry!');
return false;
} else if (year < currentYear ¦¦ (year == currentYear && month < currentMonth)) {
alert('Card has expired!');
return false;
}
return true;
}window.onload = function () {
document.payment.onsubmit = function () {
MM_validateForm('fname', '', 'R', 'card_number_field1', '', 'RisNum', 'card_number_field2', '', 'RisNum', 'card_number_field3', '', 'RisNum', 'card_number_field4', '', 'RisNum', 'card_exp_month', '', 'RisNum', 'card_exp_year', '', 'RisNum');
var bool1 = validExpiryDate(this,'card_exp_month','card_exp_year');
var bool2 = document.MM_returnValue;
return (bool1 && bool2);
};
};</script>
Note you may need to replace the 'or' conditionals: ¦¦ in the validExpiryDate function, as this forum wrecks them and they may cause syntax error otherwise.
[edited by: whoisgregg at 6:26 pm (utc) on May 26, 2009]
[edit reason] Fixed sidescroll. :) [/edit]