Web Реализация поиска с использованием PHP и MySQL

Статус
В этой теме нельзя размещать новые ответы.

lovskiy

Модератор форума
Сообщения
216
Реакции
145
Баллы
167

Поиск является важной частью большинства веб-сайтов, обеспечивая удобный доступ к информации. В этой теме мы рассмотрим, как создать простую систему поиска, используя PHP для обработки запросов и MySQL для хранения данных.

Шаг 1: Создание базы данных и таблицы:
Создадим базу данных и таблицу для хранения данных, которые мы будем искать. В данном примере создадим таблицу "articles" с полями "id", "title" и "content".
SQL:
CREATE DATABASE IF NOT EXISTS db_search;
USE db_search;

CREATE TABLE IF NOT EXISTS articles (
    id INT PRIMARY KEY AUTO_INCREMENT,
    title VARCHAR(255) NOT NULL,
    content TEXT NOT NULL
);

Шаг 2: Заполнение таблицы данными:
Добавим несколько записей для тестирования системы поиска.
PHP:
INSERT INTO articles (title, content) VALUES
    ('Статья 1', 'Это содержание статьи 1.'),
    ('Статья 2', 'Это содержание статьи 2.'),
    ('Статья 3', 'Это содержание статьи 3.');

Шаг 3: Создание формы поиска:
Создадим простую форму поиска с использованием HTML.
HTML:
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Поиск статей</title>
</head>
<body>

<form method="GET" action="search.php">
    <label for="query">Поиск:</label>
    <input type="text" id="query" name="query" required>
    <button type="submit">Найти</button>
</form>

</body>
</html>

Шаг 4: Обработка запроса поиска в PHP:
Создадим файл search.php для обработки запроса поиска и вывода результатов.
PHP:
<?php
if (isset($_GET['query'])) {
    $query = $_GET['query'];

    // Подключение к базе данных
    $pdo = new PDO('mysql:host=localhost;dbname=db_search', 'username', 'password');
    
    // Подготовленный запрос для поиска
    $stmt = $pdo->prepare("SELECT * FROM articles WHERE title LIKE :query OR content LIKE :query");
    $stmt->execute(['query' => "%$query%"]);

    // Вывод результатов
    while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        echo '<h2>' . $row['title'] . '</h2>';
        echo '<p>' . $row['content'] . '</p>';
    }
}
?>

Это основы реализации системы поиска с использованием PHP и MySQL. Обратите внимание, что этот пример представляет базовую функциональность и может потребовать дополнительной оптимизации и безопасности при интеграции в реальное приложение A slight smile
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху