2015-09-19 4 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

Смежные вопросы