检查SQL INSERT是否成功

时间:2016-03-01 23:45:50

标签: php mysql

我目前正在学习PHP并使用下面的查询将值插入我的MySQL表中 我想检查值是否正确插入。我曾尝试编写一个IF语句,并搜索了大量的例子,但似乎都没有。

我很感激能帮助我指导正确的方向。

$dd_tracking_insert = $dd_tracking_conn->query("INSERT INTO $dd_tracking_table_name (invoice_id, user_id, gc_bill_id, gc_bill_amount, gc_bill_fees, gc_bill_status, gc_bill_created) VALUES ('$invoice_id', '$user_id', '$gc_transaction_id', '$invoice_amount', '$gc_fees', '$gc_status', now())");

如果插入正确 - echo "inserted"
如果未插入错误: - echo "error: values where not inserted correctly."

链接到完整代码here

2 个答案:

答案 0 :(得分:3)

  • 将此信息发布为社区维基。

要检查您的INSERT是否成功,您可以使用mysqli_affected_rows()

  

返回受上一次INSERT,UPDATE,REPLACE或DELETE查询影响的行数。

面向对象的风格

  

int $ mysqli-> affected_rows;

程序风格

  

int mysqli_affected_rows(mysqli $ link)

检查查询和PHP的错误。

参考文献:

如果涉及用户互动,您的现有代码可向SQL injection开放。

使用mysqli with prepared statementsPDO with prepared statements

答案 1 :(得分:0)

if (!$dd_tracking_conn->query("INSERT...")){
    //echo "error: values where not inserted correctly.";
    printf("Error: %s\n", $dd_tracking_conn->error);
}else {
    echo "inserted";
}