MYSQLI UPDATE无法正常运行,但日志上没有错误或屏幕上显示

时间:2017-02-11 15:42:22

标签: mysqli paypal paypal-ipn

我有一点问题,我不知道如何解决它,我已经尽力而为,我不知道问题出在哪里,事情就是在ipn监听器将事务数据插入到ipn_data_tbl,我想用$ custom更新记录,但是不能正常工作,是我唯一需要的东西,除此之外的一切都按预期工作,这是我的代码:

  $tokens = explode("\r\n\r\n", trim($res));
$res = trim(end($tokens));
if (strcmp($res, "VERIFIED") == 0 || strcasecmp($res, "VERIFIED") == 0) {

    //Payment data
    $item_name = $_POST['item_name'];
    $txn_id = $_POST['txn_id'];
    $payment_gross = $_POST['mc_gross'];
    $currency_code = $_POST['mc_currency'];
    $payment_status = $_POST['payment_status'];
    $create_date = date('Y-m-d H:i:s');
    $payment_date = date('Y-m-d H:i:s');
    $payer_email = $_POST['payer_email'];
    $txn_type = $_POST['txn_type'];
    $custom = $_POST['custom'];

//Check if payment data exists with the same TXN ID.
$prevPayment = $con->query("SELECT UID FROM ipn_data_tbl WHERE txn_id = '".$txn_id."'");
if($prevPayment->num_rows > 0){
    exit();
}else{
    //Insert tansaction data into the database
    $insert = $con->query("INSERT INTO ipn_data_tbl(item_name,txn_id,amount,currency,payment_status,create_date,payment_date,payer_email,txn_type,UID) VALUES('".$item_name."','".$txn_id."','".$payment_gross."','".$currency_code."','".$payment_status."','".$create_date."', '".$payment_date."','".$payer_email."','".$txn_type."','".$custom."')");

}

if ($con->query($insert) === TRUE) {

    echo $update = $con->query("UPDATE `transportation` SET `paypal_status`='$payment_status' WHERE `id`='$custom'");
}
else {
    $delete = $con->query("DELETE FROM transportation WHERE txn_id = '".$txn_id."'");
}

}

1 个答案:

答案 0 :(得分:0)

对不起,我唯一需要改变的是:

    if ($con->query($insert) === TRUE) {

    echo $update = $con->query("UPDATE `transportation` SET `paypal_status`='$payment_status' WHERE `id`='$custom'");
}
else {
    $delete = $con->query("DELETE FROM transportation WHERE txn_id = '".$txn_id."'");
}

到这个

if ($insert) === TRUE) {

    echo $update = $con->query("UPDATE `transportation` SET `paypal_status`='$payment_status' WHERE `id`='$custom'");
}
else {
    $delete = $con->query("DELETE FROM transportation WHERE txn_id = '".$txn_id."'");
}