簡體   English   中英

mysqli_affected_rows()返回-1,但查詢有效

[英]mysqli_affected_rows() returns -1 but query works

我所有的mysql函數似乎都遇到了這個問題。 簡單的insert語句有效,但是當我檢查受影響的行時,它返回-1

這行得通,將新行插入到數據庫中,但是調試器將mysqli_affected_rows顯示為-1 ,因此else塊將運行:

$query = "INSERT INTO users (email, password) VALUES ('$email', '$password')";

mysqli_query($this->connection, $query) or die('Query failed in register.');


if (mysqli_affected_rows($this->connection)>0)  {
    //this doesnt get run, 
}
else {
   // this is run
}

為什么會這樣?

編輯:

  • 我正在使用Netbeans,Xdebug,WAMP。
  • 創建連接后立即查看連接時,受影響的行已設置為-1。
  • 運行成功的查詢后,在進行受影響的行檢查之前,連接仍然顯示-1。
  • 在連接對象中看不到任何錯誤消息或錯誤號。

我有完全一樣的問題。 我調查了Netbeans和Xdebug的問題,看來這是MySQLi擴展本身的錯誤。 已作出相應的錯誤報告 同時,您可以改用更寬容的表達式,例如

if (mysqli_sqlstate($dbc) == 00000) {
//your code
}

繼續調試剩余的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM