0
<?php

require("libs/connection_to_abc.php");
mysql_query("SET character_set_results=utf8");
mysql_query("SET character_set_client=utf8");
mysql_query("SET character_set_connection=utf8");

//$member_id = $_POST["member_id"];
//$name = $_POST["name"];
//$address = $_POST["address"];
//$total_price = $_POST["total_price"];

$member_id ='1';
$name ='royle';
$address = 'cmru';
$total_price = '400';
$date_order = date("Y-m-d");



mysql_query("INSERT INTO productorder VALUES (NULL,'$member_id', '$name', '$address', '$total_price','$date_order')") or die (mysql_error());

$getOrder = mysql_query("SELECT order_id FROM productorder WHERE member_id = '$member_id'") or die (mysql_error());
$order_info = mysql_fetch_array($getOrder, MYSQL_NUM);



$getTransaction = mysql_query("SELECT * FROM transaction WHERE member_id = '$member_id'") or die (mysql_error());
$transaction_info = mysql_fetch_array($getTransaction, MYSQL_NUM);



while($detail = mysql_fetch_array($transaction_info, MYSQL_NUM)){
mysql_query("INSERT INTO detailorder VALUES(NULL,'$order_info[0]','$detail[product_code]','$detail[quantity]','$detail[price]')")or die (mysql_error());
}


//$delete_transaction = mysql_query("DELETE FROM transaction WHERE member_id = '$member_id'") or die (mysql_error());

echo "DELETED.";


mysql_close($link);

?>

请编辑代码给我

我测试它。响应错误 mysql_fetch_array() 期望参数 1 是资源,给定的数组。

android 将值设置为 php 1.insert 到 productorder 2.select order_id(auto_increment) from productorder 2.1 请检查语法是 $order_info 3.select * from transaction 3.1 请检查语法是 $transaction_info 4.insert 2.1,2.2 到 detailorder

4

1 回答 1

0

这是问题:

$transaction_info = mysql_fetch_array($getTransaction, MYSQL_NUM);

while($detail = mysql_fetch_array($transaction_info, MYSQL_NUM)){

您正在调用mysql_fetch_array将信息加载到$transaction_info; 然后您mysql_fetch_array()稍后将相同的变量传递回几行。我认为您只需将这些代码行替换为:

    while($detail = mysql_fetch_assoc($getTransaction)){

您在循环内的 INSERT 查询中使用命名字段,因此您需要使用mysql_fetch_assoc它们才能正确访问它们。

编辑第二个 -MYSQL_NUM参数需要去,否则你仍然会得到一个常规数组,即使有mysql_fetch_assoc()

我还要提到 mysql_ 函数已被弃用;您应该考虑切换到 mysqli_ 或 PDO - 它们都可以帮助您编写更安全的代码。

于 2013-09-13T14:59:51.207 回答