如何从只知道id获取数据库中的某个字段?

时间:2014-04-17 15:02:14

标签: php mysql

foreach ($cart_array as $id => $quantity){
    $itemName = ($id['ProductName']);
    $itemPrice = $id['ProductPrice']; 

    $addItem = "INSERT INTO order_items ( order_number, ProductName, Quantity, Price ) VALUES ('1', '$itemName', '$quantity', '$itemPrice')"; 
    //$addItem = "INSERT INTO order_items VALUES ('one', '$itemName', '$quantity', '$itemPrice')";  

    if (!($result =  mysqli_query ($connection, $addItem))) 
        die("Error creating item in addItem Query in process order"); 
}

我的itemNameitemPrice无效。如何通过知道ID为变量分配某一行数据?例如,我想将每个产品$id的名称分配给变量$itemName,因此允许我将其插入数据库。

2 个答案:

答案 0 :(得分:0)

阵列的结构是什么?

您将$ cart_array解压缩为$ key => $值。在您的情况下,您可能正在寻找$ quantity [ProductName]。

尝试:

foreach ($cart_array AS $id => $quantity){

print ("$id<br />");
print ("<pre>");
print_r($quantity);
print ("</pre>");
print ("<hr />");

}

答案 1 :(得分:0)

您的问题是您错误地引用了数组元素。而不是做

foreach ($cart_array as $id => $quantity){
    $itemName = $id['ProductName'];
    $itemPrice = $id['ProductPrice'];
    //....
}

你需要做

foreach ($cart_array as $id => $quantity){
    $itemName = $quantity['ProductName'];
    $itemPrice = $quantity['ProductPrice']; 

或者,如果您希望获得基于$id的特定行,就像您要求的那样

$id = 2; //Set this to the product id you need
$itemName = $cart_array[$id]['ProductName'];