无法让PHP执行MySQL查询

时间:2011-04-02 02:59:04

标签: php mysql sql sql-update

为什么我的MySQL代码不适用于PHP。但是,如果我返回SQL并将其粘贴到SQL控制台中,则行会相应地更新。

SQL

UPDATE propertypriority 
   SET prioritylevel = '8' 
 WHERE roomtypecode = '1184'; 

UPDATE property 
   SET prioritylevel = '8' 
 WHERE roomtypecode = '1184'; 

PHP

$sql = "UPDATE propertypriority 
           SET prioritylevel = '".$demotionvalue."' 
         WHERE roomtypecode = '".$row['roomtypecode']."'; "
       ."UPDATE property
            SET prioritylevel = '".$demotionvalue."' 
          WHERE roomtypecode = '".$row['roomtypecode']."'; ";

3 个答案:

答案 0 :(得分:3)

来自:http://www.tutorialspoint.com/mysql/mysql-sql-injection.htm

'幸运的是,如果使用MySQL,mysql_query()函数不允许查询堆栈,也不允许在单个函数调用中执行多个查询。如果您尝试堆叠查询,则调用失败。'

所以也许尝试将其分成两个查询

答案 1 :(得分:1)

我认为您可能希望将SQL语句包装到事务中。

This page from the manual就是一个例子。

答案 2 :(得分:0)

你正在使用mysqli吗?如果是这样,根据您执行查询的方式,它不允许您使用一个命令执行两个语句。