php
$name: $msg
\n";
file_put_contents($chatFile, $entry, FILE_APPEND);
}
// خواندن پیامها
$messages = file_exists($chatFile) ? file_get_contents($chatFile) : '';
?>
چتروم ساده
چتروم ساده
چند نکته مهم برای پروژه شما:
بدون دیتابیس: این کد از chat.txt استفاده میکند. برای اینکه فایل چت بیش از حد سنگین نشود، میتوانید هر چند وقت یکبار دستی آن را پاک کنید یا از اسکریپتهای کوچک برای محدود کردن تعداد خطوط استفاده کنید.
امنیت: این یک نمونه آموزشی بسیار ساده است. چون دیتابیس نداریم، امنیت آن محدود است. اگر قرار است در اینترنت عمومی استفاده کنید، حتماً روی سرور خود دسترسی فایل chat.txt را محدود کنید (مثلاً با فایل .htaccess که اجازه دسترسی مستقیم به آن داده نشود).
بهروزرسانی خودکار: در این کد، برای دیدن پیامهای جدید باید صفحه را رفرش (Refresh) کنید. برای اینکه خودکار آپدیت شود، میتوانید یک اسکریپت کوچک JavaScript (آژاکس) به آن اضافه کنید که هر ۳ ثانیه صفحه را آپدیت کند.
آیا میخواهید بخش «بهروزرسانی خودکار پیامها» (بدون رفرش صفحه) را هم به این کد اضافه کنم تا حرفهایتر شود؟
این در یک صفحه بزار
منظورتان این است که ارسال پیام و نمایش پیامها بدون نیاز به رفرش صفحه (با استفاده از جاوااسکریپت و Ajax) در همان یک فایل باشد، یا اینکه کل امکانات به صورت کاملاً خودکار و در یک صفحه بدون پیچیدگی کار کند؟
در اینجا نسخه کاملتر و تکفایلی را برای شما آماده کردهام که هم طراحی زیبا و RTL دارد، هم پیامها را ذخیره میکند و هم با کمک جاوااسکریپت (بدون نیاز به رفرش صفحه) هر چند ثانیه یکبار چتروم را آپدیت میکند.
کد کامل و تکفایلی (index.php)
تمام این کد را در یک فایل به نام index.php قرار دهید. همچنین در همان پوشه یک فایل خالی به نام chat.txt بسازید (یادتان باشد دسترسی نوشتن به chat.txt روی هاست باز باشد).
php
[$time] $name: $msg\n";
file_put_contents($chatFile, $entry, FILE_APPEND);
}
exit;
}
// اگر درخواست برای گرفتن پیامها آمد
if (isset($_GET['action']) && $_GET['action'] == 'get') {
echo file_exists($chatFile) ? file_get_contents($chatFile) : '';
exit;
}
?>
چتروم ساده PHP