1

私は最近、ログインおよび登録システムの作成に関するいくつかのチュートリアルに従っています。私はずっと家庭教師を非常に綿密に追跡してきましたが、まったく同じコードを持っていますが、「警告: mysql_result() はパラメーター 1 がリソースであり、C:\xampp\htdocs\idea\core で指定されたブール値であることを期待しています」というメッセージが表示されます。 \functions\users.php 行 5" 毎回。

行 5 はreturn (mysql_result($query, 0) == 1) ? true : false;、MySQL クエリの return ステートメントである を参照しています。これは私が進歩するのを妨げており、私はここまでやってきたので、別のチュートリアルを選択することは実際にはオプションではありません.

申し訳ありませんが、実際のクエリを追加する必要があると思いました:$query = mysql_query("SELECT COUNT(user_id) FROM users WHERE username = '$username'");以前は、user_id、users、および username の周りにバッククォートがありましたが、それらを追加することはできませんでした.

4

2 に答える 2

2

mysql_query の php マニュアルには次のように書かれています。

SELECT、SHOW、DESCRIBE、EXPLAIN、および結果セットを返すその他のステートメントの場合、mysql_query() は成功するとリソースを返し、エラーの場合は FALSE を返します。

他のタイプの SQL ステートメント、INSERT、UPDATE、DELETE、DROP などの場合、mysql_query() は成功時に TRUE を返し、エラー時に FALSE を返します。

そのため、おそらくクエリがうまくいかず、mysql_queryfalse が返されます。

最初に ( if ($query === false) {echo mysql_error();}) を確認し、クエリが正常に実行された場合にのみ続行します。

于 2013-11-01T23:11:05.630 に答える
1

まず、mysqliではなくを使用しますmysql。後者は減価償却

第二に、の構文mysqli_query、最初に接続ポインターを渡し、次にクエリを渡すことです。したがって、最初にmysqli_connectを呼び出す必要があります

$link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');
$result = mysqli_query($link, 'SELECT * FROM table');
于 2013-11-01T23:11:50.670 に答える