آموزش طراحی اسکریپت ارسال ایمیل(PHP,Ajax) بخش دوم

در قسمت قبلی ما بخش HTML و Javascript رو نوشتیم و حالا هم قصد داریم کد های سمت سرور PHP رو بنویسیم و این اسکریپت رو تکمیل کنیم.

اینجا نکات تکمیلی هم برای درخواست های ای جکس وجود داره که ما در آموزش های بعدی بررسی میکنیم،مثلا اینکه چه طور باید تشخیص بدیم درخواست ای جکس بوده یا یه درخواست معمولی،حالا نکته ای اینه که میشه از دسترسی مستقیم با فایل جلوگیری کرد.

کد های سمت سرور

خوب بعد از دریافت مقادیر ارسالی و قرار دادن در متغییر ها،کلاس phpmailer رو اضافه کردیم،ازش یه نمونه ساخیتم و خصوصیات لازم رو ست کردیم.

خوب نکته قابل توجه اینه که محتویات فایل قابل ایمیل رو با دستور file_get_contents دریافت کردیم و اون رشته های مورد نظر رو با متغیر های خودمون با تابع str_replace جایگزین کردیم،انکودینگ ایمیل رو برای نشون دادن صحیح متن یونیکد (فارسی ) بر روی UTF-8 ست کردیم و بعدش تنظیمات بخش سرویس دهنده ایمیل ست میشه.

فیلد های دریافت کننده و ارسال کننده ایمیل مقدار میگیره و در نهایت هم با تابع Send ایمیل رو ارسال میکینم مقدار بازگشتی این تابع از نوع bool هستش واگه مقدار true برگرده این یعنی ایمیل به صورت صحیح ارسال شده.

آرایه result رو مقدار دهی می کنیم،کلید stat برای مشخص کردن وضعیت ارسال و کلید message برای مشخص کردن پیام برگشتی به کاربر هست،و در نهایت هم با دستور json_encode این آرایه رو به کد جاوا اسکریپت برگشت دادیم.(اگه یادتون باشه در قسمت قبل گفته بودیم که با مشخص کردن dataType در درخواست ای جکس کد انتظار داره که محتوای برگشتی از فرمت json باشه،بنابراین ما اینجا با دستور json_encode اینکارو انجام دادیم).

بررسی تابع success

با دستور resp.stat مشخص کردیم که نتیجه محتوا چی بوده (آیا پردازش با موفقیت انجام شده یا نه؟) اگه مقدار ۱ برگشته یعنی کد موفق بوده پس ما کلاس های لازم برای پیغام صحیح مبنی بر موفقبت آمیر بودن نشون کاربر میدیم،در غیر این صورت پیغام خطا رو نشون میدیم.

 


پست های مرتبط

   دیدگاه ها

ارسال نظرات

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *