ilustrasi chat bot

Cara Membuat Chatbot Sederhana Menggunakan PHP dan MySQL

Chatbot adalah program komputer yang dirancang untuk mensimulasikan percakapan manusia. Chatbot ini membalas Anda secara instan sesuai dengan pertanyaan Anda karena programmer telah menyisipkan ribuan input / balasan / kueri ke dalam database yang dapat diminta oleh pengguna. Untuk membuat chatbot lanjutan, kami telah membuat kode lebih banyak tetapi saya mencoba membuat chatbot sederhana dengan beberapa baris kode dan kueri yang membantu Anda untuk mendapatkan gambaran tentang bagaimana chatbot benar-benar bekerja.

Berikut cara membuat chat sederhana menggunakan php dan mysql :

  1. Buat Nama Project dengan nama chatbot
  2. Buat Database sebagai berikut bot dengan tabelnya, atau gunakan query berikut
-- Buat database bot jika belum ada
CREATE DATABASE `bot` IF NOT EXISTS;
USE `bot`;

-- Struktur dari tabel `chatbot`
CREATE TABLE `chatbot` (
  `id` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
  `queries` varchar(300) NOT NULL,
  `replies` varchar(300) NOT NULL
)

-- Dumping data untuk tabel `chatbot`
INSERT INTO `chatbot` (`id`, `queries`, `replies`) VALUES
('', 'Halo|hallo|hai|hay|hi|woy|', 'Oh, hai kawan'),
('', 'Siapa kamu|Siapa kamu?', 'Saya hanya bot, anda bisa memanggil saya \"bot\"!'),
('', 'Terimakasih|makasih', 'Sama-sama kawan'),
('', 'Sampai jumpa|sampai jumpa lagi|sampai ketemu lagi', 'Baiklah, sampai jumpa :)');

3. Buat file index.php didalam project chatbot

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>ChatBot sederhana dengan PHP | PlajariKode</title>
    <link rel="stylesheet" href="style.css">
    <script src="https://kit.fontawesome.com/a076d05399.js"></script>
    <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
</head>
<body>
    <div class="wrapper">
        <div class="title">ChatBot sederhana</div>
        <div class="form">
            <div class="bot-inbox inbox">
                <div class="icon">
                    <i class="fas fa-user"></i>
                </div>
                <div class="msg-header">
                    <p>Hai, ada yang bisa kami bantu?</p>
                </div>
            </div>
        </div>
        <div class="typing-field">
            <div class="input-data">
                <input id="data" type="text" placeholder="Ketikan sesuatu.." required>
                <button id="send-btn">Kirim</button>
            </div>
        </div>
    </div>

    <script>
        $(document).ready(function(){
            $("#send-btn").on("click", function(){
                $value = $("#data").val();
                $msg = '<div class="user-inbox inbox"><div class="msg-header"><p>'+ $value +'</p></div></div>';
                $(".form").append($msg);
                $("#data").val('');
                
                // start ajax code
                $.ajax({
                    url: 'message.php',
                    type: 'POST',
                    data: 'text='+$value,
                    success: function(result){
                        $replay = '<div class="bot-inbox inbox"><div class="icon"><i class="fas fa-user"></i></div><div class="msg-header"><p>'+ result +'</p></div></div>';
                        $(".form").append($replay);
                        // scroll bar akan otomatis kebawah mengikuti chat
                        $(".form").scrollTop($(".form")[0].scrollHeight);
                    }
                });
            });
        });
    </script>
    
</body>
</html>

4. Buat file message.php

Loading...
<?php
// koneksi ke database
$conn = new mysqli("localhost", "root", "", "bot") or die("Database Error");

// get pesan dari user
$getMesg = $conn->real_escape_string($_POST['text']);

//cek user query dengan yang ada di database
$check_data = "SELECT replies FROM chatbot WHERE queries LIKE '%$getMesg%'";
$run_query = $conn->query($check_data) or die("Error");

// jika query user sama dengan yang ada dalam database maka akan dibalas sesuai query-nya
if($run_query->num_rows > 0){
    $fetch_data = mysqli_fetch_assoc($run_query);
    //menyetorkan balasan ke variabel yang kemudian dikirimkan ke ajax
    $replay = $fetch_data['replies'];
    echo $replay;
}else{
    echo "Maaf, kami tidak paham maksud anda!";
}

?>

Jika sudah selesai, silahkan jalankan di browser maka hasilnya akan seperti dibawah ini,

Loading...

jika tidak ada error maka anda bisa menggunakan chatbot tersebut sesuai kata kunci yang sudah telah disediakan. sekian terimakasih

referensi :

https://www.plajarikode.com/2021/01/chatbot-dengan-php-mysql-ajax.html

Loading...

__Terbit pada
2 Juni 2021
__Kategori
How To, Programing

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *