در این آموزش با استفاده از AJAX یک Guestbook در PHP ایجاد می کنیم. رکوردها در پایگاه داده ذخیره خواهند شد. این جدول حاوی اطلاعات زیر است: نام فرستنده، آدرس ایمیل، آدرس IP و تاریخ آخرین ورودی. jQuery استفاده خواهد شد (برای پیاده سازی AJAX). یک محافظت ساده از هرزنامه نیز اجرا خواهد شد - شما نمی توانید هر 10 دقیقه بیش از یک ورودی ارسال کنید.
مرحله 1: SQL
برای اینکه برنامه ما کار کند، باید یک جدول ایجاد کنیم:
«s178_guestbook» («id» int(10) بدون علامت NOT NULL auto_increment، «name» varchar(255) پیشفرض «»، «ایمیل» varchar(255) پیشفرض «»، «توضیح» varchar(255) جدول ایجاد کنید. پیشفرض «»، «وقتی» int(11) NOT NULL پیشفرض «0»، «ip» varchar(20) پیشفرض NULL، کلید اصلی («id»)) ENGINE=MyISAM DEFAULT CHARSET=utf8;
مرحله 2 PHP
فایل اصلی حاوی کد زیر خواهد بود:
guestbook.php
=") == 1) error_reporting (E_ALL & ~E_NOTICE & ~E_DEPRECATED)؛ در غیر این صورت error_reporting (E_ALL & ~E_NOTICE); require_once ("classes/CMySQL.php"); // شامل کلاس سرویس برای کار با پایگاه داده // دریافت تابع IP بازدیدکننده getVisitorIP() ($ip = "0.0.0.0"؛ if((isset($_SERVER["HTTP_X_FORWARDED_FOR"])) && (!خالی($_SERVER["HTTP_X_FORWARDED_FOR"]))) ($ip = $ _SERVER["HTTP_X_FORWARDED_FOR"]; ) elseif((isset($_SERVER["HTTP_CLIENT_IP"])) && (!empty($_SERVER["HTTP_CLIENT_IP"]))) ($ip = explode("،$_SERVER[ "HTTP_CLIENT_IP"]؛ $ip = $ip.".".$ip.".".$ip.".".$ip; ) elseif((!isset($_SERVER["HTTP_X_FORWARDED_FOR"])) | | (خالی($_SERVER["HTTP_X_FORWARDED_FOR"]))) (اگر ((!isset($_SERVER["HTTP_CLIENT_IP"])) && (خالی($_SERVER["HTTP_CLIENT_IP"]))) ($ip = $_SERVER ["REMOTE_ADDR"]; ) ) بازگشت $ip; ) // دریافت آخرین ورودی ها در تابع کتاب مهمان getLastRecords($iLimit = 3) ($sRecords = ""; $aRecords = $GLOBALS["MySQL"]->getAll ( "انتخاب * از `s178_guestbook` ORDER BY `id` DESC L IMIT($iLimit)"); foreach ($aRecords as $i => $aInfo) ($sWhen = date("F j, Y H:i", $aInfo["when"]); $sRecords .=<< ($aInfo["توضیح"])