• illustrator Curse
  • 7Learn Android Course
  • 7Learn SEO Course
  • 7Learn WP Theme Course

    حرفه ای ترین دوره آموزش طراحی قالب وردپرس



  آیا می دانید تا کنون 6253 نفر در 14 دوره آموزشی سون لرن ثبت نام کرده اند !

فرم تماس با ما (php+Ajax+Bootstrap)+پیگیری درخواست-قسمت 3

16763 ۲۲ آبان ۹۲

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

صفحه ajax.php

این صفحه وظیفه پردازش درخواست های مارو بر عهده داره.

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

تو چند فرمی که در داخل صفحات داشتیم یه مقدار ارسال به نام action داریم که کاری که میخوایم انجام بدیم رو باهاش مشخص میکنیم(مثل ثبت درخواست یا دریافت وظعیت درخواست)،خوب ما هم طبق این نوع action توابعی که نوشتیم رو اجرا میکنیم.اگر اکشن ما set باشه یعنی کاربر ثبت درخواست داره پس ما تابع send_data رو اجرا میکنیم و اگر کاربر پیگیری درخواست رو اجرا کرده باشه ما تابع recive_data رو اجرا میکنیم.

تابع send_data

در این تابع اول اطلاعات ارسالی رو چک می کنیم و بعدش اگه مجاز بود اونارو داخل دیتابیس ثبت میکنیم.

اگر اطلاعات اعتبار سنجی بشه خوب تابع insert_data اجرا میشه و گرنه یه خطا برای کاربر ارسال میشه(یه نکته ای هست که باید بگم که نوع چاپ پیغام برگشتی (چه خطا چه بدون خطا) برعهده تابع set_response هست اگر در قسمت قبلی دقت کرده باشین ما نوع داده های برگشتی از این فایل رو برابر json قرار داده بودیم برای همین باید حتما داده های که به سمت کاربر ارسال میکنیم با فرمت json باشه، پس ما تمام پیغام های لازم رو با همین تابع که در ادامه توضیحش میدیم برای کاربر ارسال میکنیم).

تابع validate_data

در تابع validate_data تمام ورودی ها رو چک میکنیم که خالی نباشن و اگر هر کدوم خالی باشه پیغام خطای منایب رو برمیگردونیم در این بین ما فقط برای کد امنیتی و ایمیل کاربر دو پیغام جداگانه نوشتیم.

تابع insert_data

این تابع هم اطلاعات رو برای ما در دیتابیس ثبت میکنه و کد پیگیری لازم رو تولید و برای کاربر برمیگردونه.نکته قابل توجه اینکه ما کد پیگیری رو با IP کاربر + زمان درخواست که با الگوریتم md5 هش شده برای کاربر تولید میکنیم.

تابع recive_data

خوب این تابع هم کد پیگیری رو دریافت میکنه و نتیجه رو به کاربر نشون میده.

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

تابع set_response

این تابع مقادیری که براش ارسال میکنیم رو به صورت json برای ما برمیگردونه و به اجرای کد خاتمه میده،برای همین موقعی فرواخوانی میشه که دیگه لازم نیست پردازشی بعدش صورت بگیره،پارامتر ورودی یه آرایه هست که این آرایه با دستور json_encode به صورت json در میاد،خوب این کجا به درد میخوره؟موقعی که لازم داریم چند مقدار به سمت کاربر ارسال کنیم از این روش استفاده می کنیم،اگر توجه کرده باشین در داخل تابع های قبلی ما از آرایه result استفاده کردیم و با کلید های مختلف مقادیر مورد نظر رو به سمت کاربر فرستادیم.شما می تونید از کلید های بیشتری استفاده کنید ما ایجا از دو تا کلید success و message استفاده کردیم که اولی برای وضعیت موفق آمیز بودن اجرای کد و دومی برا ثبت پیغام لازم در هر تابع استفاده میشه.

خوب دوستان این از کد های لازم برای این اسکریپت رد این قسمت ما کد های کامل اسکریپت (شامل کد های مدیریت) روبرای دانلود قرار میدیم و در جلسات بعدی صفحات مدیریت این اسکریپت رو آموزش میدیم.

دانلود کد های اسکریپت فرم تماس با ما (PHP)

موفق و پیروز باشید

:: مطالب جدید سون لرن را از طریق ایمیل دریافت کنید :

دیدگاه ها 99 دیدگاه برای این مطلب ارسال شده است. نظردهی برای این مطلب بسته شده است .

  • ‏‏

    صفحه signout و index این خطا را می دهد: Fatal error: Call to undefined function is_admin() in C:\xampp\htdocs\php\test\ssss\index.php on line 20
    و صفحه spuser این خطا را می دهد Fatal error: Call to undefined function is_admin() in C:\xampp\htdocs\php\test\ssss\spuser.php on line 4
    دقیقا همین کد هایی هست که در فایل قرار دادین فقط مشخصات دیتابیس را وارد کردم که بدرستی هم متصل شد اما همین خطا ها را می دهد . در صفحه ورود هم وقتی که نام کاربری و رمز رو وارد میکنم و ورود رو میزنم مثل اینکه بعد از ورود به صفحه ایندکس میره اما اون صفحه خطایی که گفتم رو میده

    • ‏‏
      کیوان علی محمدی(۳۰ مرداد ۱۳۹۳)

      سلام خطا میگه تابع is_admin تعریف نشده و در دسترس نیست شما چک کنید فایل config به درستی به صفحه متصل شده بشه.

      • ‏‏

        اره درست متصل شده وگرنه باید خطا می داد . این خطی یا همین شرطis_admin رو اگه بردارم صفحه نمایش داده میشه اما در صورت وجود این شرط خطای فوق را می دهد

        • ‏‏
          کیوان علی محمدی(۲ شهریور ۱۳۹۳)

          مشکل اینه توی کدهای شما نمیتونه فایل config رو اضافه کنه که کدهای تعریف تابع is_admin داخلش هست،حالا نمیدونم شاید مشکلی در دستور reqiure یا include باشه.

  • ‏‏

    من کد ها رو از همینجا دانلود کردم دست نزدم فقط اطلاعات دیتابییس لوکال هاست رو بهش دادم شما هم یه بررسی کد ها رو بکنید

  • ورود/عضویت سریع با اکانت فیسبوک/جیمیل شما

    :: شما می توانید با استفاده از اکانت یاهو یا جیمیل خود به صورت کاملا امن، سریع و بدون نیاز به ورود اطلاعات عضو و وارد سایت شوید. در این صورت هیچ نیازی به ورود نام کاربری و رمز عبور خود نخواهید داشت و هویت شما از طریق ایمیلتان مورد تائید قرار می گیرد .
    برای استفاده از این روش باید در اکانت گوگل(جیمیل) و یا یاهوی خود لاگین باشید .
    عضویت/ ورود سریع با :
    در حال اتصال ...

    ورود به سایت

    ورود سریع با :
    در حال اتصال ...

    جستجو در سون لرن

    عبارت :
    7LearnTelegram