我有一个transaction的资料表:
Field  Type  Null  Key  Default  Extra
transcart  char(12)  NO  PRI      
transitem  char(20)  NO  PRI  NULL   
transItemQty  int(5)  NO     NULL   我想把transitem 及 transItemQty放入新资料表deliverydetails,
不知为何是insert 头一个记录,
但用print 可看出要找出多个记录,
得出如下:3select transitem,transItemQty from transaction, itemDetails where transItem=itemID and transcart='200808031037'
20080803111036
451460413
15
select transitem,transItemQty from transaction, itemDetails where transItem=itemID and transcart='200808031037'
20080803111036
486461785
12
select transitem,transItemQty from transaction, itemDetails where transItem=itemID and transcart='200808031037'
20080803111036
765357690
13
请各位高手多多帮忙。
<?php
include ("./connection.php");if(isset($_COOKIE["MIT"])){
$cartid=$_COOKIE["MIT"];
$contPerson=isset($_GET["contPerson"])? $_GET["contPerson"]:NULL;
$contNo=isset($_GET["contNo"])? $_GET["contNo"]:NULL;
$deliAdd=isset($_GET["deliAdd"])? $_GET["deliAdd"]:NULL;
$orderNo=date('YmdHis');// Query
$query1 = mysql_query("insert into delivery values('$orderNo','$contPerson','$contNo','$deliAdd')");
$execute1 = mysql_query("update cart set checkout='completed' where cartid='$cartid'"); $query2 = "select transitem,transItemQty from transaction, itemDetails where transItem=itemID and transcart='$cartid'";
$execute3 = mysql_query($query2);
while ($result3 = mysql_fetch_array($execute3)){
print ($query2."<br>");
$itemid=$result3["transitem"];
$quantity=$result3["transItemQty"];
print ($orderNo."<br>");
print ($itemid."<br>");
print ($quantity."<br>");
$query3 = mysql_query("insert into deliverydetails set orderNo='.$orderNo.',itemID='.$itemid.',transltemQty='.$quantity.'");

}

} else {
taxitop("login.html","Session expired. Please login. Taxi to login in 3 seconds.",3000);
}
mysql_close();
?>

解决方案 »

  1.   

    对不起~ 这个才是~
    <?php
    include ("./connection.php");if(isset($_COOKIE["MIT"])){
    $cartid=$_COOKIE["MIT"];
    $contPerson=isset($_GET["contPerson"])? $_GET["contPerson"]:NULL;
    $contNo=isset($_GET["contNo"])? $_GET["contNo"]:NULL;
    $deliAdd=isset($_GET["deliAdd"])? $_GET["deliAdd"]:NULL;
    $orderNo=date('YmdHis');// Query
    $query1 = mysql_query("insert into delivery values('$orderNo','$contPerson','$contNo','$deliAdd')");
    $execute1 = mysql_query("update cart set checkout='completed' where cartid='$cartid'"); $query2 = "select transitem,transItemQty from transaction, itemDetails where transItem=itemID and transcart='$cartid'";
    $execute3 = mysql_query($query2);
    while ($result3 = mysql_fetch_array($execute3)){
    print ($query2."<br>");
    $itemid=$result3["transitem"];
    $quantity=$result3["transItemQty"];
    print ($orderNo."<br>");
    print ($itemid."<br>");
    print ($quantity."<br>");
    $query3 = mysql_query("insert into deliverydetails values('$orderNo','$itemid','$quantity')");

    }

    } else {
    taxitop("login.html","Session expired. Please login. Taxi to login in 3 seconds.",3000);
    }
    mysql_close();
    ?>
      

  2.   

    你的$cartid只是一个值,当然只有一条记录哦。
      

  3.   


    不好意思,刚才看错了。
    你的orderNo是不是有唯一索引哦?
    后头的INSERT应该是出错了。