<?php
if ( isset($_POST['btnSubmit']) ) {
// gather card info
// gather card info
$transaction->amount ='9.99';
$transaction->card_num =$_POST['card_num'];
$transaction->exp_date =$_POST['exp_date'];
// gather card info
// gather card info
//capture info
$response = $transaction->authorizeAndCapture();
//capture info
//check if approved
//check if approved
if($response->approved){
echo "<h1>Success! The test credit card has been charged!</h1>";
echo "Transaction ID: ". $response->transaction_id;
//check if approved
//check if approved
// if approved insert into sql data base
// if approved insert into sql data base
$query = "INSERT INTO payments (card_num,exp_date) VALUES ('$card_num','$exp_dat')";
$result = mysql_query($query);
// if approved insert into sql data base
// if approved insert into sql data base
}else{
echo $response->error_message;
}
}
?>
我正在尝试运行一个支付集成代码,当支付被批准时,我无法将支付详细信息插入MySQL表。上面写着:
未定义变量:exp_dat"未定义的变量:card_num。
我不知道如何定义它,因为我不能在$transaction->card_num =$_POST['card_num'];
中将$
放在card_num
之前。
我也无法在其中插入交易id。
感谢
您没有变量$exp_dat
,正如错误所说,您的变量是$transaction->exp_date
或_POST['exp_date']
话虽如此,请阅读此链接如何防止PHP中的SQL注入?并在绑定变量时将其转换为mysli_查询,或者使用PDO。
错误消息非常清楚。
$exp_dat
不存在(但$transaction->exp_date
存在(
$card_num
不存在(但$transaction->card_num
存在(
在查询中使用以下变量:
$query = "INSERT INTO payments (card_num,exp_date)
VALUES ('$transaction->card_num','$transaction->exp_date')";