علیرام | علی پیرانی

گاه نوشت های یک توسعه دهنده

استفاده از ajax در PHP

بدون دیدگاه

استفاده از ajax در PHP

با عرض سلام خدمت کاربران گرامی، در این آموزش قصد دارم نحوه استفاده از ایجکس (ajax) در php را به شما آموزش دهم، ما در این آموزش یک پروژه کوچک که یک دفترچه تلفن کوچک هست را باهم پیاده سازی میکنیم،

در ابتدا باید یک فایل با نام index.php در پوشه پروژه خود ایجاد کنید و کد های زیر را در آن قرار دهید:

ما در کد های بالا یک فایل ایجاد کرده ایم و با استفاده از بوت استرپ و سی اس اس های دلخواه آن را پیاده  سازی کرده ایم همچنین یک فرم در این سند طراحی کرده ایم که وظیفه ارسال و دریافت اطلاعات را بر عهده دارد، باید توجه داشته باشید که مقدار اتریبیوت action در فرم برابر با فایلی می باشد که در ادامه خواهیم ساخت و مقدار method برابر با get می باشد، که وظیفه ارسال اطلاعات داخل input فرم را بر عهده دارد.

در ادامه باید یک فایل searchphone.php ایجاد کنیم و دیتا های نمونه خود را در آن قرار دهیم و پس از ان کد های مربوط پردازش داده دریافتی را در آن قرار میدهیم:

در کد های بالا یک متغییر به نام  $searchkey ایجاد کرده ایم و مقداری که از طریق فرم ارسال می شود را در این متغییر ذخیره کرده ایم اگر شما از متد post برای ارسال اطلاعات استفاده میکنید باید مقدار این متغییر را به روش زیر پر کنید به شکل زیر:

لازم به ذکر هست که searchedbox برابر با نام اینپوت در فرم می باشد. همچنین یک آرایه به نام  contact ایجاد کرده ایم که اسامی و با شماره تلفن های نمونه را در خود ذخیره کرده است

با استفاده از دستور foreach یک آرایه را به آن ارسال کرده ایم و گفته ایم به همه ی مقادیر آرایه را بررسی کند.

دستور strpos: با استفاده از این دستور ما میتوانیم یک مقدار را در یک آرایه پیدا کنیم، فقط توجه داشته باشید که نتیجه این دستور boolean می باشد و شماره خانه مقدار پیدا شده را بر میگرداند به همین جهت از ==! استفاده کرده ایم که هم مقدار و جنس متغییر را بررسی کرده در صورتی که از =! استفاده کنیم جواب برگشتی برابر با صفر خواهد بود و خانه صفر را اشاره خواهد کرد و در صورتی که دستور strpos مقداری یافت ان را با دستور echo چاپ میکنیم

بسیار خب!! تا به اینجا کار ما میتونیم با وارد کردن مقدار مثه اسم ali در اینپوت و اینتر زدن  مقادیر داخل آرایه را چاپ کنیم و در صورتی که مقدار با مشخصات وارد شده وجود داشت چاپ بشه، اما حالا میخوایم با استفاده از ایجکس وقتی که تایپ میکنیم دیتا هارو بررسی کنه و بدونه اینکه صفحه رفرش بشه پایین باکس نمایش داده بشه:

این کد هارو داخل تگ اسکریپت قبل از بسته شدن تگ body قرار بدین:

و حالا توضیحات کد 🙂

ما یک آیدی به اینپوت دادیم که برابر با ali  هست، و با استفاده از جی کوئری این اینپوت رو توسط ایدی گرفتیم، و گفتیم که زمانی دکمه زده شده و keyup شد عملیات ایجکس رو شروع کنه به انجام دادن، داخل بدنه قسمت ایجکس هم متدمون که از نوع get هست قرار دادیم و همچنین منبع دیتامون که فایل searchphone.php هست رو معرفی کردیم و همچنین فرم رو که دیتارو سریالایز کنه ( داده هارو فشرده میکنه و به سمت url  ارسال میشه)  و یک فانکشن داره که نتجیه در اون قرار میگیره، در نهایت div رو که با استفاده جی کوئری ایدیشو گرفتیم مقدار رو داخلش قرار میدیم،

کد کامل صفحه ایندکس به شکل زیر میشه:

ضمنا یادتون نره که کتابخونه جی کوئری رو اضافه کنید ،شما میتونید دموی این پروژه رو تو این لینک ببینید 🙂

مشاهده دموی کد ها



برچسب‌ها:

دیدگاهتان را بنویسید

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