-3

mysql の更新を実行する前に、条件が存在するかどうかを確認しようとしています。以下のコードは動作します:

if (!mysql_query(
"UPDATE customers SET available_credit = available_credit where userid = '$userid';"
))

{
die('Sorry, a database error occurred');
}

...しかし、次のように別の条件を追加しようとしています:

if (!mysql_query && ($tradein_status == 'Accepted CREDIT')(
"UPDATE customers SET available_credit = available_credit where userid = '$userid';"
))

{
die('Sorry, a database error occurred');
}

..これは機能しません - 次のエラーが生成されます。

私が疑問に思っている2番目のことは、なぜこの部分なのかということです:

if (!mysql_query(
"UPDATE customers SET available_credit = available_credit where userid = '$userid';"
))

...条件の後に2つの括弧と中括弧を付けて書かれていないため、次のように条件付きテストのために他の場所で行うようです:

if (!mysql_query){
"UPDATE customers SET available_credit = available_credit where userid = '$userid';"
}

助けてくれてありがとう!!

4

4 に答える 4

1

mysql_query関数です。次のように使用されます。mysql_query('SQL QUERY');

読みやすくするために、質問のように書かれています。

if(!mysql_query(
'SQL QUERY'
))

次のように書くこともできます。

if(!mysql_query('SQL QUERY'))

したがって、別の句を追加するには、mysql_query呼び出しの前または後に追加します。

if($tradein_status == 'Accepted CREDIT' && mysql_query('SQL QUERY'))

ifステートメントでは、を{}省略できます。その場合、真の場合は次の行が実行されます。

したがって、最終的には次のようになります。

if($tradein_status == 'Accepted CREDIT' && mysql_query('SQL QUERY')){
    die('Sorry, a database error occurred');
}
于 2013-04-05T19:28:47.557 に答える
1
if ($tradein_status == 'Accepted CREDIT' && !mysql_query (
"UPDATE customers SET available_credit = available_credit where userid = '$userid';"
))

{
die('Sorry, a database error occurred');
}

mysql_query は変数ではなく関数です。2 番目の括弧内の文字列は引数です。

于 2013-04-05T19:31:19.413 に答える
0
if ($tradein_status == 'Accepted CREDIT')
    mysql_query("UPDATE customers SET available_credit = available_credit where userid = '$userid';") or die("Sorry, a database error occurred");

関数名と引数の間に他のコードを書くことはできません。

于 2013-04-05T19:29:32.470 に答える
0

mysql_query"UPDATE customers SET available_credit = available_credit where userid = '$userid';"クエリを文字列パラメーターとして渡す関数呼び出しです。

これはmysql_query、次の形式でなければならないことを意味します。

mysql_query("UPDATE customers SET available_credit = available_credit where userid = '$userid';")

mysql_query は、クエリの結果である RESOURCE.. を返します。

2 つ目の条件ステートメントを追加するには、次のようにします。

if (!mysql_query("UPDATE customers SET available_credit = available_credit where userid = '$userid';") && ($tradein_status == 'Accepted CREDIT'))
于 2013-04-05T19:29:59.810 に答える