使用一个按钮创建两个DB更新和一个插入

时间:2014-11-24 17:10:01

标签: php mysql

我一直在与此斗争。希望这对其他人也有帮助。我有一个发票显示页面,它填充和显示完美,我想用“付款”按钮进行主要的数据库更改。

如果有OrderIn_id,它应该将付费的order_instate列更新为“是”,或者如果有OrderOut_id,它应该将付费的order_outstate列更新为“是”,可以有一个实例,其中有一个或其他Id或两者兼而有之。然后它将值插入到发票表中。

插入工作完美,我没有得到任何错误消息,它进入下一页,好像一切正​​常,但它不会将订单表更新为付费=“是”,它保持字段相同。你能告诉我在这段代码中我没有看到的内容吗?这是在按下提交按钮时调用的php代码。

<?php

if($_SERVER['REQUEST_METHOD'] == 'POST') {

    if(isset($row['orderIn_id'])) {
        $orderIn_id = $row['orderIn_id'];
        $ip_id = $row['ip_id'];
        $orderIn_quantity = $row['orderIn_quantity'];
        $orderIn_total = $row['orderIn_total'];
        $orderIn_paid = "Yes";

    $changeVal="UPDATE order_instate
                 SET user_id = '$user_id', ip_id = '$ip_id', orderIn_quantity = '$orderIn_quantity', orderIn_total = '$orderIn_total',  
                 orderIn_paid = '$orderIn_paid'
                 WHERE orderIn_id = '$orderIn_id'; " ; 

    $changeCheck=mysqli_query($dbhandle, $changeVal) 
                        or die(mysqli_error($dbhandle));
     }

    if (mysqli_affected_rows($dbhandle) == 1) {
        echo "<span class = 'errorlog'><br />The Order update was successful.<br /></span>";
    }

    if(isset($row2['orderOut_id'])) {           
        $orderOut_id = $row2['orderOut_id'];        
        $op_id = $row2['op_id'];
        $orderOut_quantity = $row2['orderOut_quantity'];
        $orderOut_total = $row2['orderOut_total'];
        $orderOut_paid = "Yes";

    $changeVals="UPDATE order_outstate
                 SET user_id = '$user_id', op_id = '$op_id', orderOut_quantity = '$orderOut_quantity', orderOut_total = '$orderOut_total',  
                 orderOut_paid = '$orderOut_paid'
                 WHERE orderOut_id = '$orderOut_id'; " ; 

    $changeCheck2=mysqli_query($dbhandle, $changeVals) 
                        or die(mysqli_error($dbhandle));
    }

    if (mysqli_affected_rows($dbhandle) == 1) {
    echo "<span class = 'errorlog'><br />The Order update for out of state was successful. <br /></span>";
    }           

    $invoice_total = 0;
    $invoice_total = $gtotal;
    $invoice_shipped = "No";

    $add ="INSERT INTO invoice(user_id, invoice_total, invoice_shipped)
                VALUES ('$user_id', '$invoice_total', '$invoice_shipped')"; 

    $addCheck=mysqli_query($dbhandle, $add)
                        or die(mysqli_error($dbhandle)); 

    if($addCheck == NULL){
            echo "<span class = 'errorlog'><br />Your Payment was not successful. Please try again. <br /></span>";
            } else {
            header("location: userOrders.php");
            }
    }
?>

0 个答案:

没有答案