كيفية إنشاء محرك بحث باستخدام PHP وMySQL
محتويات
كيفية إنشاء محرك بحث باستخدام PHP وMySQL
إنشاء محرك بحث لموقع الويب الخاص بك باستخدام PHP وMySQL يمكن أن يكون مفيدًا جدًا لتمكين المستخدمين من العثور على المحتوى بسرعة وسهولة. في هذا المقال، سنشرح كيفية إعداد محرك بحث بسيط يعمل على خادم ويب ويستخدم قاعدة بيانات MySQL.
المتطلبات الأساسية
- معرفة أساسية بـ PHP وMySQL وHTML.
- سيرفر محلي مثل XAMPP أو WAMP لاختبار الكود.
- قاعدة بيانات MySQL تحتوي على البيانات التي تريد البحث فيها.
الخطوة 1: إعداد قاعدة البيانات
أولاً، نحتاج إلى إعداد قاعدة بيانات MySQL تحتوي على البيانات التي سنبحث فيها. في هذا المثال، سنقوم بإنشاء جدول للمقالات.
CREATE DATABASE search_db;
USE search_db;CREATE TABLE articles (
id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(255) NOT NULL,
content TEXT NOT NULL
);INSERT INTO articles (title, content) VALUES
('مقال عن JavaScript', 'تعلم أساسيات JavaScript.'),
('مقال عن HTML', 'تعلم هيكلية صفحات الويب باستخدام HTML.'),
('مقال عن CSS', 'تعلم تنسيق صفحات الويب باستخدام CSS.');
الخطوة 2: إعداد صفحة البحث
سنقوم الآن بإنشاء صفحة HTML تحتوي على نموذج للبحث. عند تقديم النموذج، سيتم إرسال طلب إلى ملف PHP لمعالجة البحث وعرض النتائج.
<!DOCTYPE html>
<html lang="ar">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>محرك البحث</title>
</head>
<body>
<h1>محرك البحث</h1>
<form method="GET" action="search.php">
<input type="text" name="query" placeholder="أدخل كلمة البحث">
<button type="submit">بحث</button>
</form>
<div id="results">
<?php if (isset($_GET['query'])): ?>
<?php include 'search.php'; ?>
<?php endif; ?>
</div>
</body>
</html>
الخطوة 3: كتابة كود البحث في PHP
الآن، سنكتب كود PHP لمعالجة طلب البحث واسترجاع النتائج من قاعدة البيانات.
<?php
// search.php$host = 'localhost';
$db = 'search_db';
$user = 'root';
$pass = '';// إنشاء اتصال بقاعدة البيانات
$conn = new mysqli($host, $user, $pass, $db);// التحقق من الاتصال
if ($conn->connect_error) {
die('Connection failed: ' . $conn->connect_error);
}// الحصول على استعلام البحث من المستخدم
$query = $_GET['query'];
$query = $conn->real_escape_string($query);// تنفيذ استعلام البحث
$sql = "SELECT * FROM articles WHERE title LIKE '%$query%' OR content LIKE '%$query%'";
$result = $conn->query($sql);// عرض النتائج
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo '<div>';
echo '<h2>' . $row['title'] . '</h2>';
echo '<p>' . $row['content'] . '</p>';
echo '</div>';
}
} else {
echo '<p>لم يتم العثور على نتائج.</p>';
}// إغلاق الاتصال
$conn->close();
?>
تحسينات إضافية
لتعزيز محرك البحث، يمكنك النظر في التحسينات التالية:
- الحماية من حقن SQL: استخدم الاستعلامات المحضرة لتأمين البحث ضد هجمات SQL Injection.
- البحث المتقدم: أضف عوامل تصفية إضافية مثل التاريخ أو الفئة لتحسين دقة النتائج.
- تمييز النتائج: قم بتمييز الكلمات المطابقة في النتائج لسهولة التعرف عليها.
- الفهرسة: استخدم الفهارس في قاعدة البيانات لتحسين سرعة الاستعلامات.
في هذا المقال، قمنا بإنشاء محرك بحث بسيط باستخدام PHP وMySQL. يمكنك توسيع هذا المثال بإضافة ميزات متقدمة وتحسين الأداء لتلبية احتياجات موقع الويب الخاص بك.