我想要做的是從表單插入信用卡信息到我的MySQL數據庫。 首先, 到期日期的輸入格式將是MM/YY
(有或沒有空格)的表格上,我試圖連接"20"
字符串到年,但我總是得到"20 YY"
作爲結果,它不能從mysql被認定爲日期。從PHP字符串到MySQL日期
我想獲得過期日期以適應格式,以便稍後可以將其更改爲MySQL格式。有任何想法嗎?
這是我到目前爲止的代碼:
<?php
$cc_number="";
$cc_expire="";
$cc_cvc="";
$cc_number=$_POST['number'];
$cc_expire=$_POST['expiry'];
$cc_cvc=$_POST['cvc'];
$cc_pid=$_SESSION['pid'];
/*edit the expire date*/
$pieces=explode("/", $cc_expire);
$expire_dd="01";
$expire_mm=$pieces[0];
$expire_yy="20".$pieces[1];
$expire_yy=trim($expire_yy, "\x00..\x1F");
//$cc_expire = $expire_yy.$expire_mm.$expire_dd;
//$cc_expire = date('Y-m-d', strtotime(str_replace('-', '/', $cc_expire)));
echo "expire_yy = ".$expire_yy;
//echo "cc_expire = ".$cc_expire;
if (isset($_POST["submit"])) {
if (empty($cc_number) || empty($cc_cvc) || empty($cc_expire)) {
echo "<p align='center'><font color='red'><br><br><br><br>All fields are mandatory.</font></p>";
}
else {
$cc_expire = date('Y-m-d', strtotime($cc_expire));
$sql = "INSERT INTO credit_card (credit_card_number, cvc, expiration_date, pid)
VALUES ('$cc_number', '$cc_cvc', '$cc_expire', $cc_pid)";
if ($dbconn->query($sql)) {
//echo "<script> window.location.assign('../card.php'); </script>";
}
else {
echo "<p align='center'><font color='red'><br><br><br><br>Something went wrong.</font></p>";
}
}
}
?>
我想對所有的牌來獲得,這將是01-MM-YYYY MySQL的日期格式。
'print_r($ _ POST)的輸出是什麼;'? – AnkiiG
Mysql日期格式是yyyy-mm-dd,而不是'01-MM-YYYY'。什麼是'expiration_date',varchar?示例代碼中的$ cc_expire是什麼?你也開放SQL注入這個.. – chris85