問題タブ [rows-affected]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
941 参照

php - mysqli_affected_rows は -1 を返しますが、更新クエリは成功します

ユーザーパスワードを変更するためにユーザーの新しいパスワード文字列を取得するphpコードのページがあり、いくつかの検証コードがユーザーテーブルの更新レコードのプロセスページに送信された後。プロセス ページに新しいパスワード文字列を送信し、更新クエリを実行した後、mysqli_affected_rows は -1 を返しますが、更新クエリは成功し、パスワードが変更されました。 .

すべてのコードで mysqli 関数を使用しています。db_conncet_fnc()、db_query_func()、db_fetch_assoc_func()、... これらの関数には、同じ mysqli 関数が含まれています。

私のプロセスページのコードはこれです:

stackoverflow と google でこれに関するいくつかの質問を見つけ、このhttps://bugs.php.net/bug.php?id=67348のような xdebug でmysqliのバグについて議論しまし たが、私は $connect->stat を使用していません。 xdebugが有効になっているすべてのmysqliのバグについて、php.iniでxdebugを無効にしますが、mysqli_affected_rowsはすべての状態とイベント、およびすべての位置で-1を返します。

以前、phpstorme でのデバッグには Google Chrome を使用していました。

Chrome で何かを無効にする必要がありますか?

更新:(2018/08/01):

Googleでさまざまなサイトを検索し、stackoverflowで検索して、書かれた手順と提案を実行して数日後、解決できませんでした。

「siddharaj solanki」という名前の人は、この質問に次のように書いています。

mysqli_affected_rows は新しい接続を作成します (詳細を読む) 書きました:

問題は、mysqli_affected_rows() 関数でデータベース リンク ($link) を渡す方法がわからないことです。上記で試してみたのですが、新しいデータベース接続を作成するようで、mysqli_affected_rows が 1 ではなく 0 を返します。

したがって、私の調査とこのリンクに基づいて、この機能のバグは簡単には解決されないと思います。

https://www.google.com/search?q=bug+mysqli_affected_rows

更新クエリを確認するための mysqli_affected_rows の代わりに、解決策を教えてください。

良い時間

それを解決するのを手伝ってください。

ありがとう。