Программирование поиска категории
Для продукта соответствующего значению Category, переданного на эту страницу, подходящие записи представляют в таблице. Из подходящих записей выводятся три поля: ItemNumber, ItemTitle, и ItemPrice. Код начинается с вывода заголовка таблицы и заголовков столбцов над значениями таблицы. На следующем листинге значение переменной Category выводится в заголовке, чтобы помочь идентифицировать результаты поиска.
if ($Category != "") { <span class="head3">Поиск</span>результатов для категории <span class="head3"><?php echo $Category ?></span>: <br> <br> <table border="0" cellpadding="3"> <tr> <th>Item Number</th> <th>Item Title</th> <th>Item Price</th> </tr>
Вслед за этим на странице выводятся результаты поиска. Каждая запись таблицы Product, которая имеет значение ItemType, совпадающее со значением переменной Category, выбирается для вывода полей ItemNumber, ItemTitle, и ItemPrice. Каждая запись продукта появляется в отдельной строке таблицы вывода. Реализующий это код показан ниже.
Пример I.7.
(html, txt)
Сценарий начинается с соединения с базой данных eCommerce.mdb и создания объекта множества записей с именем RSCategory для извлечения подходящих записей из таблицы Products. Выбираются записи, в которых значение ItemType совпадает со значением переменной Category, содержащей значение строки запроса:
SQL="SELECT ItemNumber,ItemTitle,ItemPrice FROM Products WHERE ItemType= '$Category' ORDER BY ItemNumber"
Сценарий выполняет итерации на множестве выбранных записей, выводя каждую по очереди в строке таблицы. Значения множества записей присваиваются переменным, чтобы упростить с ними работу.
$ItemNumber = $row[ItemNumber] $ItemTitle = $row[ItemTitle] $ItemPrice = number_format($row[ItemPrice],2) ... <td>echo $ItemNumber</td> <td>echo $ItemTitle</td> <td align="right">$echo $ItemPrice</td>
Отметим, что для переменной $ItemPrice перед присваиванием была использована функция PHP number_format, чтобы вывод был представлен в долларах и центах. Значение также выравнивается вправо в ячейке таблицы.
}
odbc_close($conn);
?> </table> <?php
}
?>
Пример I.7.
Сценарий начинается с соединения с базой данных eCommerce.mdb и создания объекта множества записей с именем RSCategory для извлечения подходящих записей из таблицы Products. Выбираются записи, в которых значение ItemType совпадает со значением переменной Category, содержащей значение строки запроса:
SQL="SELECT ItemNumber,ItemTitle,ItemPrice FROM Products WHERE ItemType= '$Category' ORDER BY ItemNumber"
Сценарий выполняет итерации на множестве выбранных записей, выводя каждую по очереди в строке таблицы. Значения множества записей присваиваются переменным, чтобы упростить с ними работу.
$ItemNumber = $row[ItemNumber] $ItemTitle = $row[ItemTitle] $ItemPrice = number_format($row[ItemPrice],2) ... <td>echo $ItemNumber</td> <td>echo $ItemTitle</td> <td align="right">$echo $ItemPrice</td>
Отметим, что для переменной $ItemPrice перед присваиванием была использована функция PHP number_format, чтобы вывод был представлен в долларах и центах. Значение также выравнивается вправо в ячейке таблицы.