Введение в программирование на PHP5


Создание записей OrderDetail


Затем сценарий создает одну или несколько записей в таблице OrderDetail. Информация для этой таблицы, однако, приходит не из компании кредитных карт. Часть ее находится в таблице ShopCart, а часть — в таблице Products. Мы, фактически, переносим детали текущего заказа в подобное множество записей OrderDetail. Мы начинаем сценарий с создания трех множеств записей, необходимых для работы: множество записей $RSDetail для доступа к таблице OrderDetail, множество записей $RSShopCart для доступа к таблице ShopCart и множество записей $RSProducts для доступа к таблице Products.

'—Создание записи OrderDetail $sqlDetail ="SELECT * FROM OrderDetail WHERE NULL"; $rsDetail = odbc_exec($conn,$sqlDetail);

$sqlShopCart ="SELECT * FROM ShopCart WHERE OrderNo ='$OrderNo'"; $rsShopCart = odbc_exec($conn,$sqlShopCart);

while ($row = odbc_fetch_array($rsShopCart))

{

$sqlProd ="SELECT ItemTitle,ItemPrice FROM Products WHERE ItemNumber ='$row[OrderItem]'"; $rsProd = odbc_exec($conn,$sqlProd);

$ProdTitle = odbc_result($rsProd,ItemTitle); $ProdPrice = odbc_result($rsProd,ItemPrice);

$sqlInsertDetail = "INSERT INTO OrderDetail (OrderNo,ItemNumber,ItemQuantity,ItemTitle,ItemPrice) Values ('$row[OrderNo]','$row[OrderItem]','$row[OrderQuantity]','$ProdTitle','$ProdPrice')";

$rsInsertDetail = odbc_exec($conn,$sqlInsertDetail);

}

Пример I.16.

Сценарий выполняет итерации по записям корзины покупок в поиске соответствующих OrderNo, копирует поля OrderNo, OrderItem и OrderQuantity в соответствующие поля записи OrderDetail. Затем поле OrderItem используется для извлечения ItemTitle и ItemPrice для этого продукта из таблицы Products и копирования их в поля the ItemTitle и ItemPrice записи OrderDetail. Подготовленная запись обновляется в таблице OrderDetail, и начинается обработка следующей записи корзины покупок. В конце мы будет иметь запись в таблице OrderDetail для каждой записи корзины покупателя.




Начало  Назад  Вперед



Книжный магазин