نحوه ارسال درخواست ایجکس در محیط پنل پیشرفته مبتنی بر شی گرایی

پرسیده شده
فعالیت 1274 روز پیش
دیده شده 497 بار
0

سلام استاد عزیز . ممنون میشم توضیح بدهید اگر در همین پنل پیشرفته که ایجاد کردید اگر بخواهیم درخواست ایجکس ارسال کنیم چه جوری باید این کار رو انجام بدیم بنده هر چی سرچ کردم پاسخی پیدا نکردم مثلا من میخوام به یکی از همین handler ها یک درخواست ایجکس ارسال بشه .شما در قسمت پلاگین ثبت و نام و ورود ایجکس رو استفاده کردید  که اکشن سفارشی و url  پیش فرض رو نوشتید ولی در محیط این پنل پیشرفته فکر کنم نوحه استفاده فرق میکنه و  بنده هر چی تلاش کردم نتونستم و همیشه پاسخ درخواست صفر بر می گشت .بازم ممنون میشم روش اصولی کار رو توضیح بدهید یعنی در محیط این پنل url ایجکس چی باید باشه؟ یا اکشن خاصی نیاز هست در ایجکس؛ در این پنل وارد بشه (چون وقتی اکشن وارد میکردم پاسخ این بود که آدرس بر اساس فایل روتر خط فلان معتبر نیست ) یا اینکه در construnt function نحوه صحیح قلاب کردن wp_ajax چگونه است یا اصلا در محیط این پنل نیازی به این قلاب هست یا نه .اگه مقدور هست سریع تر جواب بدید چون الان درگیر همین پروژه هستم و به پاسخ نیاز دارم.

فایل پیوست

جواد عباسی
جواد عباسی

29 آبان 99

0
حذف شده

سلام آقای عباسی

اگر شما از ایجکس استفاده کردی فرق چندی توی استفاده در کدنویسی به صورت شی گرا نداره و فقط نحوه صدا زدن کمی متفاوت هست

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

Designing a class: WordPress AJAX handler

فایل پیوست

مجید زادگی

توسط

مجید زادگی

30 آبان 99

حذف شده
سلام علیکم
جواد عباسی

30 آبان 99

0
حذف شده

خیلی ممنون بابت پاسخگویی -این سایتی که شما فرستادید بنده رو بیشتر سر در گم کرد .بنده در حال یادگیری هستم و خیلی سر در نمیارم .اون چیزی که من تا حالا درک کردم کاری هست در سه تصویر الصاقی انجام دادم اما پاسخ ایجکس 400
Bad Request رو میده .ببینید بنده یک کلاس CompanyInformationHandler دارم که میخوام تو فایل ایندکس اش یه تصویر بارگزاری کنم و قبل از ارسال به سرور تصویر برش بخوره و ری سایز بشه که این کار رو میخوام با ایجکس انجام بدم برای همین تو فایل جی اس ام طبق تصویر شماره یک اون url  و اکشن رو تعریف کردم و add_action  ها رو هم طبق تصویر شماره دو تو همین فایل  CompanyInformationHandler تعریف کردم و تابع قلاب شده رو هم باز تو همین فایل طبق تصویر شماره سه تعریف کردم حالا نمیدونم روش ام درست بوده یا نه

فایل پیوست
pic.zip
47.66 KB

جواد عباسی

توسط

جواد عباسی

30 آبان 99

0
حذف شده

لطفا چند مورد چک کنید

۱- add_action که گذاشتید اجرا میشه یا نه؟

۲- آدرس ajax_url رو اشتباه ثبت کردید باید اصلاح کنید روش درست به شکل زیر هست به عنوان مثال:

 

 wp_localize_script('script_users', 'AJAXSCRIPT', array(
            'ajax_url' => admin_url('admin-ajax.php')
        ));

 wp_enqueue_script('script_users');   

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

 

$.ajax({
        url: AJAXSCRIPT.ajax_url,

 

۳- dataType: "json" رو در موقع اجرای تابع ایجکس بیارید.

 

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

 

امیدوارم که توضیحات لازم برای حل مسله شما کافی باشه یک تلاش دیگه انجام بدید و دقیق بررسی کنید کد رو

 

فایل پیوست

مجید زادگی

توسط

مجید زادگی

30 آبان 99

0
حذف شده

آدرس url که مشکل نداشت چون آدرس رو میشناسه و wp_localize_script یه عمل اختیاری و استاندارد کار هست . مشکل از این بود که add_action ها رو باید در فایل اصلی پروژه (panel-pro) وارد میکردم که من در فایل CompanyInformationHandler وارد کرده بودم , مشکل ایجکس حل شد اما الان مشکل این هست که طبق تصاویری که پیوست کردم تصویر شماره 5 و 6 مربوط به کد های دموی پلاگین برش عکس هست که چون خارج از محیط شی گرایی هست به خوبی عمل میکنه و عکس برش خورده به درستی نشون داده میشه و همون جور که تو دو مورد آخر تصویر inspect اش (شماره 6)مشخص هست درخواست ها تبدیل به عکس شدند و اصلا درخواست xhr ای وجود نداره اما تو پروژه بنده طبق تصویر شماره 7 یک درخواست ایجکس و یک درخواست img ارسال شده که ایجکس به درستی پاسخ داده اما درخواست img اروری که تو تصویر شماره 8 مشخصه نشون داده میشه و عکس برش خورده در صحفه ایندکس نشون داده نمیشه چون برای عکس یه آدرس تولید شده که با آدرس های handler ما نمیخونه و اون ارور تصویر شماره هشت رو نشون میده --- اینم آدرس سایت

 https://www.webslesson.info/2018/03/image-crop-and-upload-using-jquery-with-php-ajax.html

 و اینم آدرس دموی زنده 

https://www.webslesson.info/2018/03/demo-of-image-crop-upload-using-jquery.html

 

فایل پیوست
img.zip
132.18 KB

جواد عباسی

توسط

جواد عباسی

1 آذر 99