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


Программирование поиска по ключевым словам


Поиск по ключевым словам действует почти таким же образом, как и поиск по категории. Основное различие состоит в способе извлечения записей о продуктах из таблицы Products. Первая часть сценария будет идентичной, за исключением вывода значения Criterion, переданного в строке запроса, а не значения Category.

<% If Criterion <> "" Then %> <span class="head3">Search</span>results for criterion <span class="head3">echo $Criterion</span>: <br> <br> <table border="0" cellpadding="3"> <tr> <th>Item Number</th> <th>Item Title</th> <th>Item Price</th> </tr>

Следующий листинг кода показывает процедуру поиска всех продуктов, содержащих значение в одном из своих полей, которое совпадает со значением Criterion, переданным на страницу из меню поиска.

<?php

$conn = odbc_connect ('Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\inetpub\wwwroot\PHPTutorial\Ecommerce\databases\ecommerce.mdb','','');

$sql = "SELECT ItemNumber,ItemTitle,ItemPrice FROM Products WHERE"; $sql = $sql . " ItemNumber LIKE '%" . $Criterion . "%'"; $sql = $sql . " OR ItemType LIKE '%" . $Criterion . "%'"; $sql = $sql . " OR ItemProducer LIKE '%" . $Criterion . "%'"; $sql = $sql . " OR ItemTitle LIKE '%" . $Criterion . "%'"; $sql = $sql . " OR ItemDescription LIKE '%" . $Criterion . "%'"; $sql = $sql . " ORDER BY ItemNumber";

//Выполняется оператор SQL и создается множество записей

$rs = odbc_exec($conn, $sql);

//Цикл по множеству записей и вывод необходимых записей

while($row = odbc_fetch_array($rs))

{

$ItemNumber = $row[ItemNumber]; $ItemTitle = $row[ItemTitle]; $ItemPrice = number_format($row[ItemPrice],2);

echo "<tr style=\"color:seagreen; line-height:8pt\" onMouseOver=\"this.style.backgroundColor='lightgreen';this.style.color='darkgreen'; this.style.cursor='hand'\" onMouseOut=\"this.style.backgroundColor='white';this.style.color='seagreen'\" onClick=\"location.href='detail.php?ItemNumber=$ItemNumber\" . \"&Criterion=$Criterion'\"> <td>$ItemNumber</td> <td>$ItemTitle</td> <td align=\"right\">$$ItemPrice</td> </tr>";




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



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