-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');
}

..这不起作用 - 它会生成此错误:“解析错误:语法错误,第 235 行 /home/bohemeth/public_html/tradeins/save_tradeins.php 中的意外 '('”

我想知道的第二件事是为什么这部分是:

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

...在条件之后没有用两个括号和花括号编写,看起来你可以在其他任何地方进行条件测试,如下所示:

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 是一个函数,而不是一个变量。第二个括号中的字符串是参数。

于 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.. 这是您查询的结果。

要添加第二个条件语句,请执行以下操作:

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