2015-09-19 179 views
-1

我是新的PHP和我试图在一个PHP文件中执行多个查询,它给了我这个错误“调用未定义的函数mysql_query_del()在”如果我只执行一个查询它的工作原理,但如果我执行2个或更多的查询,那么它不起作用。有人可以帮我解决这个问题吗?调用未定义的函数mysql_query_del()

这是我想要执行的代码。

我希望它从表中删除值后,我将其转移到另一个表。

<?php 
//make connection 
mysql_connect('localhost', 'root', ''); 
//select db 
mysql_select_db('mjj_app'); 



$sql="INSERT INTO tbl1_viewer (fname,fqty) SELECT food,quantity FROM table1_orderlist;"; 
$list=mysql_query($sql); 
?> 


<?php 

// if successfully insert data into database, displays message "Successful". 
if($list){ 
$sqldel="DELETE * FROM table1_orderlist;"; 
$result=mysql_query_del(sqldel); 
    if($result){ 
      header("Location: index.php"); 
    } 
} 

else { 
echo "ERROR"; 
} 
?> 
+0

你真的想这样做:'DELETE * FROM table1_orderlist;'?你确定? – Drew

+0

...并且没有'DELETE *',你可以删除一个完整的行。看到https://dev.mysql.com/doc/refman/5.6/en/delete.html – VolkerK

回答

1

http://php.net/manual/en/book.mysql.php

有像mysql_query_del

无此功能替换

$result=mysql_query_del(sqldel); 

$result=mysql_query($sqldel); 

也替换

$sql="INSERT INTO tbl1_viewer (fname,fqty) SELECT food,quantity FROM table1_orderlist;"; 

$sql="INSERT INTO tbl1_viewer (fname,fqty) (SELECT food,quantity FROM table1_orderlist)"; 

和@Drew说 更换

$sqldel="DELETE * FROM table1_orderlist;"; 

$sqldel="DELETE FROM table1_orderlist;"; 
1

变化:

$result=mysql_query_del(sqldel); 

到:

$result=mysql_query($sqldel); 

,并用准备好的发言PDO /库MySQLi因为你的代码是容易受到SQL注入。

1
$sqldel="DELETE * FROM table1_orderlist;"; 
$result=mysql_query_del(sqldel); 

用它替换此行:

$sqldel="DELETE FROM table1_orderlist;"; 
$result=mysql_query(sqldel); 
2
DELETE * FROM table1_orderlist; 

是一个语法错误。

应该

DELETE FROM table1_orderlist; 

这将删除所有行,如果这真的是你想要的

+0

这工作真的很好!感谢男人 – jeiidii

+0

没问题。已经确定你正在对一个不存在的函数进行错误的函数调用。只是想在您拉动触发器之前提醒您不要丢失所有数据。祝你好运,在你所有的编码和学习 – Drew