В этом уроке я расскажу про php поиск, который ищет в Базе Данных информацию и делает ссылки на них.
Вот скрипт самого поиска:
<!-- Поиск -->
<form action="search.php" method="POST" onsubmit="javascript: if ((keyword.value=='')||(keyword.value=='Поиск...')) { return false; } else { return true; }">
<input name="keyword" onfocus="if (this.value=='Поиск...') this.value=''" value="Поиск..." style="font: 11px Verdana; height:14px; width:102px;" />
<input type="submit" name="send" value="Найти" style="font: bold 11px Verdana; background-color:#FFFFFF; height:19px; width:50px;">
</form>
<!--Конец Поиск -->
Вот такой вид имеет форма поиска:
Эта форма поиска защищает от того, когда пользователь ничего не ввел.
Теперь в коде, который выше, мы видим следующе:<form action="search.php"
Здесь как раз search - это файл страницы куда будет передаваться введенная в поиске информация.
Поэтому вы можете там изменить на название вашей страницы, а если нет, то назовите ваш файл search.php и в него введите следующий код:
<?
echo "<p>По вашему запросу:";
if (isset($_POST['keyword'])) {$keyword = $_POST['keyword'];}
$keyword = trim($keyword); \\ убираются лишние пробелы из начала и конца строки
$keyword = stripslashes($keyword); \\удаляет экранирование символов
$keyword = htmlspecialchars($keyword); \\ заменяет html теги на коды
echo "<b>$keyword</b>";
$search_query = "SELECT id, title, view FROM table WHERE title LIKE '%".strtoupper($keyword)."%' OR text LIKE '%".strtoupper($keyword)."%' LIMIT 100"; \\ table - это ваша таблица, где надо искать
$query = mysql_query($search_query); \\ Здесь непосредственно происходит поиск
if(!$query)
{
echo "<p class='text'>Поиск не осуществлен. Код ошибки:</p>";
echo exit(mysql_error());
}
if (mysql_num_rows($query) > 0)
{
$myrow = mysql_fetch_array($query);
do
{
printf("<p><a class ='post_link' href='articles.php?id=%s'>%s</a><span class='post_view'> --> Просмотров: %s</span></p>",$myrow["id"],$myrow["title"],$myrow["view"]); \\ здесь делаем ссылку где находится данная информация.
}while ($myrow = mysql_fetch_array($query));
} else echo "<p>Ничего не найдено.";
?>
Как видите скрипт php поиска по базе данных не очень сложных, но имеет:
- Защиту от взлома.
- Защиту от ошибок.
- Прост в установке на ваш сайт.
Я думаю, что моя статья про php поиск по базе данных mysql Вам помогла.