mysql_fetch_row()不是有效的结果资源

use*_*305 1 php mysql sql rows

我很困惑,我不知道什么是错的.我准备将我的第一张表中的所有数据传输到另一张表.这是我的代码:

$getdata = mysql_query("SELECT Quantity, Description, Total FROM ordercart");

while($row = mysql_fetch_row($getdata))
{
foreach($row as $cell){

$query1 = mysql_query("INSERT INTO ordermem (Quantity, Description, Total) VALUES 
($cell)",$connect);

}
mysql_free_result($getdata);
}
Run Code Online (Sandbox Code Playgroud)

我收到错误:警告:mysql_fetch_row():5不是有效的MySQL结果资源.

Mah*_*mal 5

您只传递一个值INSERT,它希望将三个值传递给字段 Quantity, Description, Total:

INSERT INTO ordermem (Quantity, Description, Total) VALUES 
($cell);
Run Code Online (Sandbox Code Playgroud)

将其更改为:

INSERT INTO ordermem (Quantity, Description, Total) VALUES 
($cell, $descriptionParam, $totalParam);
Run Code Online (Sandbox Code Playgroud)

您也可以尝试INSERT INTO SELECT直接使用而不是两个不同的语句,如下所示:

INSERT INTO ordermem (Quantity, Description, Total)
SELECT Quantity, Description, Total FROM ordercart;
Run Code Online (Sandbox Code Playgroud)