1

私がやろうとしているのは、ログインしたユーザーが特定のページを開いた後に、ログインしたユーザーを参照したユーザーに付加価値を与えることです

だから私はいくつかの変更を加えました、そして今私は次のエラーを受け取ります

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource 
in C:\xampp\htdocs\test\goingback_t_play_150.php on line 18

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in  
C:\xampp\htdocs\test\goingback_t_play_150.php on line 20
, 

これが私のコードです

<?php
session_start();
?>
<?php
// Adjust MySQL connection settings...
$mysql_hostname = "localhost";
$mysql_user = "user";
$mysql_password = "";
$mysql_database = "";
$bd = mysql_connect($mysql_hostname,    $mysql_user,$mysql_password) or die("");
mysql_select_db($mysql_database, $bd) or die

$sql="SELECT * FROM users where id={$_SESSION['refcode']}"; 

$val = 2; //#2 : Why do u need the ()?
$result = mysql_query($sql,$bd);
$data=mysql_fetch_assoc($result);
if (mysql_num_rows($result)==1) {
// equate the value to a variable to use outside
// this while loop
 $acc_balance = $data['com_balance'];

$commision = $data['id'];
}
$remainder = $acc_balance + $val;       
$update_query = mysql_query("UPDATE users SET com_balance = '".                 
mysql_real_escape_string($remainder) ."'
WHERE id='refcode'"); 
if ($update_query) {
 print "";
4

2 に答える 2

1

データベースクエリにエラーがあるようです。

後 :

    $result = mysql_query($sql,$bd);

追加 :

    if (!$result) {
      die(mysql_error());
    }

クエリの問題を教えてくれるはずです。

于 2012-09-26T07:52:25.877 に答える
1

mysql_使用はお勧めしません。mysqli_代わりに使用することをお勧めします。詳細については、こちらをご覧ください

問題については、変数$_SESSION['refcode']が正しく定義されているかどうかを確認する必要があります。

この変数が正しく設定されている場合は、SQL構文またはデータベース内にエラーがある可能性があります。

置き換えてみてください:

$result = mysql_query($sql,$bd);

これとともに :

$result = mysql_query($sql,$bd) or die(mysql_error($bd));

結果変数が未定義のように見えるため、スクリプトはMySQLエラーがある場合はそれを出力します。

于 2012-09-26T07:50:23.650 に答える