مشروع الشات بوت البسيط للرد على الأسئلة من قاعدة البيانات

بلوجر فيومي

مشروع الشات بوت البسيط للرد على الأسئلة من قاعدة البيانات

في مشروع النهاردة هنعمل شات بوت بسيط باستخدام PHP وMySQL. الشات بوت ده هيكون قادر على الرد على أسئلة المستخدمين عن طريق البحث في قاعدة بيانات خاصة بالأسئلة والأجوبة. هنتعلم مع بعض إزاي نعمل قاعدة بيانات، ونكتب كود PHP للتواصل مع قاعدة البيانات، وكمان هنعمل واجهة بسيطة للمستخدم.



1. إنشاء قاعدة البيانات

أول حاجة نبدأ بها هي إنشاء قاعدة بيانات جديدة. هنستخدم الكود التالي لإنشاء قاعدة بيانات باسم chatbot_db وجدول باسم chatbot_responses:

CREATE DATABASE chatbot_db;

USE chatbot_db;

CREATE TABLE chatbot_responses (

    id INT AUTO_INCREMENT PRIMARY KEY,

    question TEXT NOT NULL,

    answer TEXT NOT NULL

);

    

بعد كده، هنضيف بعض البيانات لجدول chatbot_responses:

INSERT INTO chatbot_responses (question, answer) VALUES

('إزاي أعمل شات بوت؟', 'ممكن تستخدم PHP وMySQL لإنشاء شات بوت.'),

('ما هي لغة البرمجة التي تفضلها؟', 'أنا أحب PHP!'),

('إيه الأخبار؟', 'كل شيء تمام، شكرا لسؤالك!');

    

2. إعداد بيئة العمل

بعد ما نكون أنشأنا قاعدة البيانات وأضفنا البيانات، هنحتاج نعمل ملف PHP للاتصال بقاعدة البيانات. هننشئ ملف باسم db.php:

<?php

$host = 'localhost';

$dbname = 'chatbot_db';

$username = 'username'; // اسم المستخدم الخاص بقاعدة البيانات

$password = 'password'; // كلمة المرور الخاصة بقاعدة البيانات

try {

    $conn = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);

    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

} catch (PDOException $e) {

    echo "Connection failed: " . $e->getMessage();

}

?>

    

3. إنشاء واجهة المستخدم

بعد كده، هنحتاج لواجهة بسيطة للمستخدم. هننشئ ملف باسم index.php:

<?php include 'db.php'; ?>

<!DOCTYPE html>

<html>

<head>

    <title>شات بوت بسيط</title>

    <link rel="stylesheet" href="style.css">

</head>

<body>

    <h1>شات بوت بسيط</h1>

    <form method="POST">

        <input type="text" name="user_input" placeholder="اكتب سؤالك هنا..." required>

        <button type="submit">إرسال</button>

    </form>

    <?php

    if ($_SERVER['REQUEST_METHOD'] == 'POST') {

        $user_input = $_POST['user_input'];

        // البحث عن الجواب في قاعدة البيانات

        $stmt = $conn->prepare("SELECT answer FROM chatbot_responses WHERE question LIKE ?");

        $stmt->execute(['%' . $user_input . '%']);

        

        $response = $stmt->fetchColumn();

        if ($response) {

            echo "<p>الجواب: <strong>$response</strong></p>";

        } else {

            echo "<p>آسف، مش فاهم السؤال ده.</p>";

        }

    }

    ?>

</body>

</html>

    

4. إضافة تصميم بسيط

وأخيرًا، هنضيف شوية تصميم للصفحة. هننشئ ملف باسم style.css:

body {

    font-family: Arial, sans-serif;

    background-color: #f4f4f4;

    margin: 0;

    padding: 20px;

}

h1 {

    color: #333;

}

form {

    margin-bottom: 20px;

}

input[type="text"] {

    padding: 10px;

    width: 80%;

    border: 1px solid #ddd;

}

button {

    padding: 10px;

    background-color: #5cb85c;

    color: white;

    border: none;

    cursor: pointer;

}

button:hover {

    background-color: #4cae4c;

}

    

5. الخاتمة

دلوقتي، إحنا عملنا شات بوت بسيط قادر على الرد على أسئلة المستخدمين عن طريق البحث في قاعدة بيانات. المشروع ده ممكن يتطور ويتحسن بشكل أكبر بإضافة ميزات جديدة زي تعلم آلي أو واجهة مستخدم أكثر تطورًا. حاول تستخدم المشروع كقاعدة لبناء شات بوتات أكتر تعقيدًا.

إرسال تعليق

شاهد أيضاً :-
Cookie Consent
تعريف الارتباط

نستخدم ملفات تعريف الارتباط لضمان حصولك على أفضل تجربة.

Oops!
يبدو أن هناك مشكلة في اتصالك بالإنترنت. يرجى الاتصال بالإنترنت والمحاولة مرة أخرى.
AdBlock Detected!
لقد اكتشفنا أنك تستخدم إضافة حظر الإعلانات في متصفحك.
يتم استخدام الإيرادات التي نحصل عليها من الإعلانات لإدارة هذا الموقع، لذا نرجو منك إضافة موقعنا إلى القائمة البيضاء في إضافة حظر الإعلانات الخاصة بك.
Site is Blocked
Sorry! This site is not available in your country.