ID на продукта не се съхранява в базата данни

може ли някой да помогне кодът ми изглежда не съхранява стойността на идентификатора на продукта тук в моя код, погледнете, аз също получавам идентификатора от друга таблица

    <?php
include("Connection.php");
$dTime = time();
$myValue = $_REQUEST['dValue'];
echo "<p>
The time is: {$dTime}<br/>
The choice is {$myValue}
</p>
";



$sql = "Select ID from product where NAME = '$myValue'";

$result = mysql_query($sql);
while ($row = mysql_fetch_assoc($result)) 
    $pid=$row["PRODUCT_ID"];



$sql2 = "INSERT INTO  `starbucks`.`order_details` (
`ID` ,
`ORDER_ID` ,
`PRODUCT_ID` ,
`QTY`
)
VALUES (
NULL ,  '',  '$pid',  '1'
)";

$result2 = mysql_query($sql2);
?>

актуализира кода


person Andrew Asmer    schedule 11.09.2011    source източник
comment
Надявам се, че не кодирате нищо за Starbucks :D   -  person Marek Sebera    schedule 11.09.2011
comment
Виждате ли идентификатора на екрана, след като страницата е стартирана?   -  person Vincent Ramdhanie    schedule 11.09.2011
comment
Не виждам никакъв идентификатор и не, не кодирам за starbucks, това е копие на starbucks, хаха. за моя проект   -  person Andrew Asmer    schedule 11.09.2011


Отговори (3)


$id = $row["ID"]

вместо:

$id = $row;
person shiying yu    schedule 11.09.2011

Имате неправилна стойност на масива за $id вместо ключа ID на масива:

$id = $row;

// Should be
$id = $row['ID'];
person Michael Berkowski    schedule 11.09.2011

във вашия оригинален код няма обработка на грешки, трябва да направите нещо подобно:

$sql = "Select ID from product where NAME = '$myValue'";
if ($sql) {
    $result = mysql_query($sql);
    while ($row = mysql_fetch_assoc($result))
        $pid = $row["PRODUCT_ID"];



    $sql2 = "INSERT INTO  `starbucks`.`order_details` (
    `ID` ,
    `ORDER_ID` ,
    `PRODUCT_ID` ,
    `QTY`
    )
    VALUES (
    NULL ,  '',  '$pid',  '1'
    )";

    $result2 = mysql_query($sql2);
    if (!$result2) {
        echo mysql_error();
        break;
    }
} else {
    echo mysql_error();
}

И вижте каква грешка получавате.

person Community    schedule 11.09.2011
comment
Имам друга променлива и това не е първичният ключ - person Andrew Asmer; 11.09.2011
comment
Да, лошото ми, както го видях сега, вероятно вашият starbucks.id се увеличава автоматично, така че не трябва да предавате NULL, просто изпуснете идентификатора от списъка с полета и стойностите от заявката за вмъкване. - person ; 11.09.2011
comment
какво е недефинирана променлива? полето ID на Starbucks или $row['id']? - person ; 11.09.2011
comment
моята грешка е Забележка: Недефинирана променлива: pid в C:\xampp\htdocs\Self Exercise\proj\sampleDiv.php - person Andrew Asmer; 11.09.2011