နိဒါန်း
တိုက်ရိုက်ချက်တင်လုပ်ဆောင်ချက်များကိုခေတ်သစ်လူမှုရေးပလက်ဖောင်းများနှင့် applications များ၏မရှိမဖြစ်လိုအပ်သောအစိတ်အပိုင်းတစ်ခုဖြစ်လာသည်။ လက်ငင်းဆက်သွယ်ရေးပေးနိုင်ရန်အတွက် developer များကဤအင်္ဂါရပ်ကိုသင့်လျော်သောနည်းပညာများဖြင့်အကောင်အထည်ဖော်ရန်လိုအပ်သည်။ ဤဆောင်းပါးတွင် PHP ကို အသုံးပြု. အခြေခံ Live Chat စနစ်ကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုပြသပါမည်။ ကျွန်ုပ်တို့သည်ဒေတာဘေ့စ်ကိုဖန်တီးမှုနှင့်စတင်ပါမည်။ တဖြည်းဖြည်းဖွံ့ဖြိုးရေးလင့်ခ်တစ်ခုစီကိုတဖြည်းဖြည်းမိတ်ဆက်ပေးပါမည်။
အဆင့် 1 - ဒေတာဘေ့စ်စားပွဲတစ်ခုဖန်တီးပါ
ပထမ ဦး စွာ chat အချက်အလက်များကိုသိမ်းဆည်းရန်ဒေတာဘေ့စ်စားပွဲတစ်ခုကိုဒီဇိုင်းဆွဲရန်လိုအပ်သည်။ ဤဇယားသည်အနည်းဆုံးမက်ဆေ့ခ်ျ ID, Deply Defer ID, Message Content, Message Content, Message Message Message Send နှင့်အချိန်ပေးရန်စသည့်နယ်ပယ်များတွင်ပါ 0 င်သင့်သည်။ မက်ဆေ့ခ်ျဇယားတစ်ခုဖန်တီးရန်ရိုးရှင်းသော SQL ကြေငြာချက်တစ်ခုရှိသည်။
CREATE TABLE messages (
id INT AUTO_INCREMENT PRIMARY KEY,
sender_id INT,
receiver_id INT,
message TEXT,
sent_at DATETIME
);
အဆင့် 2 - ဒေတာဘေ့စ်ဆက်သွယ်မှုကိုတည်ဆောက်ပါ
ထို့နောက် PHP ရှိဒေတာဘေ့စ်နှင့်ဆက်သွယ်မှုကိုတည်ဆောက်ရန်လိုအပ်သည်။ ၎င်းကိုအောက်ပါကုဒ်ကို အသုံးပြု. ရယူနိုင်ပါသည်။
<?php
$conn = new mysqli('localhost', 'username', 'password', 'database');
if ($conn->connect_error) {
die("ဒေတာဘေ့စ်နှင့်ချိတ်ဆက်ရန်မအောင်မြင်ပါ:" . $conn->connect_error);
}
?>
အဆင့် 3: မက်ဆေ့ခ်ျပို့ပါ
အသုံးပြုသူများသည်မက်ဆေ့ခ်ျများမှတဆင့်မက်ဆေ့ခ်ျများတင်သွင်းနိုင်သည်။ တင်ပြချက်အပြီးတွင်စာတိုများကိုဒေတာဘေ့စ်သို့သိမ်းဆည်းလိမ့်မည်။ ဤနေရာတွင်မက်ဆေ့ခ်ျများပို့ခြင်းအတွက်ကုဒ်၏ဥပမာတစ်ခုဖြစ်သည်။
<?php
// ပေးပို့ရန်မက်ဆေ့ခ်ျကိုနှင့်လက်ခံသူကိုရယူပါID
$message = $_POST['message'];
$receiverId = $_POST['receiver_id'];
// ပေးပို့သူကိုရယူပါID(session သို့မဟုတ် login စိစစ်အတည်ပြုမှတဆင့်ရရှိသောနိုင်ပါတယ်)
$senderId = $_SESSION['user_id'];
// ကြိုတင်ပြင်ဆင်မှုကြေညာချက်ကိုဖန်တီးပါ
$stmt = $conn->prepare("INSERT INTO messages (sender_id, receiver_id, message, sent_at) VALUES (?, ?, ?, NOW())");
$stmt->bind_param("iis", $senderId, $receiverId, $message);
$stmt->execute();
// ဒေတာကိုအောင်မြင်စွာဖြည့်စွက်ရှိမရှိစစ်ဆေးပါ
if ($stmt->affected_rows > 0) {
echo "မက်ဆေ့ခ်ျကိုအောင်မြင်စွာပေးပို့ခဲ့သည်!";
} else {
echo "မက်ဆေ့ခ်ျပို့ခြင်းမအောင်မြင်ပါ!";
}
$stmt->close();
?>
အဆင့် 4: မက်ဆေ့ခ်ျကိုရယူပါ
လက်ခံသူသည်မက်ဆေ့ခ်ျအသစ်များကိုအချိန်မှန်တွင်ကြည့်ရှုရန်လိုအပ်သည်။ Ajax တောင်းဆိုမှုများနှင့်အတူကျွန်ုပ်တို့သည်ရှေ့အဆုံးတွင်ပုံမှန်စာအသစ်များကိုပုံမှန်ရနိုင်သည်။ မက်ဆေ့ခ်ျများရယူရန် PHP ကုဒ်ဥပမာတစ်ခု -
<?php
// လက်ခံသူကိုရယူပါID(session သို့မဟုတ် login စိစစ်အတည်ပြုမှတဆင့်ရရှိသောနိုင်ပါတယ်)
$receiverId = $_SESSION['user_id'];
// ကြိုတင်ပြင်ဆင်မှုကြေညာချက်ကိုဖန်တီးပါ
$stmt = $conn->prepare("SELECT * FROM messages WHERE receiver_id = ? ORDER BY sent_at DESC");
$stmt->bind_param("i", $receiverId);
$stmt->execute();
// ရလဒ်ကိုရယူပါ
$result = $stmt->get_result();
// Reference ကို selfiative ခင်းကျင်းရန်သတ်မှတ်ထားသည်
$messages = $result->fetch_all(MYSQLI_ASSOC);
// ပြန်လာJSONformat နဲ့မက်ဆေ့ခ်ျကိုခင်းကျင်း
echo json_encode($messages);
$stmt->close();
?>
အဆင့် 5: Front-end display ကို
ရှေ့အဆုံး၌, မက်ဆေ့ခ်ျကို Ajax တောင်းဆိုမှုမှတဆင့်ရယူပါ။ ဤတွင် JavaScript ကုဒ်ဥပမာတစ်ခုမှာ -
<?php
// အသုံးပြုAJAXBackend မှမက်ဆေ့ခ်ျကိုခင်းကျင်းခြင်း
var xhr = new XMLHttpRequest();
xhr.open("GET", "get_messages.php", true);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
var messages = JSON.parse(xhr.responseText);
// မက်ဆေ့ခ်ျခင်းကျင်းမှတဆင့် loop,နှင့် chat 0 င်းဒိုးတွင်ပြသ
for (var i = 0; i < messages.length; i++) {
var message = messages[i];
// မက်ဆေ့ခ်ျအကြောင်းအရာနှင့်ပေးပို့သူအချက်အလက်များစသည်တို့ကိုဖော်ပြပါ။
// ...
}
}
};
xhr.send();
?>
နိဂုံးချုပ်အားဖြင့်
အထက်ပါအဆင့်များမှတစ်ဆင့်ကျွန်ုပ်တို့သည်အခြေခံ Live Chat စနစ်ကိုအောင်မြင်စွာအကောင်အထည်ဖော်နိုင်ခဲ့သည်။ အသုံးပြုသူမှပေးပို့သောမက်ဆေ့ခ်ျများကိုဒေတာဘေ့စ်တွင်သိမ်းဆည်းလိမ့်မည်။ Real-time chat functions များကိုတည်ဆောက်ရန် PHP နှင့် Ajax နည်းပညာကိုမည်သို့အသုံးပြုရမည်ကိုပိုမိုနားလည်သဘောပေါက်ရန်ဤဆောင်းပါးသည်သင့်အားပိုမိုကောင်းမွန်သောနားလည်မှုကိုပိုမိုနားလည်ရန်ကူညီနိုင်သည်ဟုမျှော်လင့်ပါ။