نمایش نتایج: از شماره 1 تا 2 , از مجموع 2

موضوع: نمونه کد php اتصال آسان و هوشمند به زرین پال

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو انجمن lizard.tiny آواتار ها
    تاریخ عضویت
    Jul 2011
    محل سکونت
    miladworkshop.ir
    نوشته ها
    480
    تشکر تشکر کرده 
    234
    تشکر تشکر شده 
    960
    تشکر شده در
    478 پست

    پیش فرض نمونه کد php اتصال آسان و هوشمند به زرین پال



    شاید برای شما هم پیش اومده باشه که خواسته باشید اسکریپت یا پلاگین خودتون رو به درگاه زرین پال متصل کنید اما با مشکلاتی مواجه شده باشید از جمله دشوار بودن کد نویسی, مشکل در انتخاب وب سرویس متناسب نظیر Soap یا Rest و ...


    شاید هم در حال حاظر در حال استفاده از درگاه زرین پال هستید اما بنا به دلایل مختلف از جمله مشکلات میزبانی, مشکلات موجود در شبکه اینترنت داخلی, خارجی یا مشکلات زیر ساختی, میزان تراکنش های ناموفق شما زیاد هست یا اصلاً مشتریان شما به دلیل همین مشکلات قادر به اتصال به درگاه زرین پال و پرداخت وجه رو ندارند.


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


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



    برتری های استفاده از این نمونه کد و روش نسبت به روش هایی که وجود داره چیه ؟

    پروسه کدنویسی و اتصال به درگاه بسیار ساده تر شده
    در این روش موقیت وب سرویس ایران و اروپا زرین پال قبل از اتصال توسط خود کلاس برسی میشه و عملیات از طریق لینکی انجام میشه که در دسترس باشه و پینگ کمتری داشته باشه
    در این روش در صورتی که روی هاست شما Soap فعال باشه به صورت خودکار از این متد برای انجام تراکنش استفاده میشه و اگه متد روی هاست شما فعال نباشه به صورت خودکار ازوب سرویس Rest استفاده میشه که از CURL کمک میگیره, لذا به طور همزمان هر دو متد Soap و RestFul رو بدون نیاز به حتی یک خط کد نویسی خواهید داشت و در صورت فعال نبود هر یک از این متد اتصال به صورت خودکار از طریق متد جایگزین صورت می گیره.
    در این روش به سادگی میتونید حالت زرین گیت ( انتقال مستقیم به صفحه پرداخت بانک ) رو فعال کنید.
    در این روش به سادگی میتونید حالت SandBox یا پرداخت آزمایشی رو فعال کنید.
    در این روش علاوه بر دریافت کدهای خطا میتونید تفسیر و علت خطا رو هم دریافت کنید.
    در این روش در صورتی که با خطای ناقص بودن پارامتر مواجه بشید, در پاسخ, پارامتر مورد نظر هم به شما اعلام میشه.
    دسترسی به لینک نهایی پرداخت بدون نیاز به قرار دادن لینک پرداخت و Authority در کنار هم ( ایجاد خودکار لینک با توجه به حالت های مختلف SandBox, WebGate, ZarinGate و ... )
    وریفای ساده تراکنش ها تنها با ارسال مرچنت کد و مبلغ
    و ...



    چطور با این همه برتری و تفاوت کدنویسی ساده تر هست ؟

    کلیه موارد عنوان شده در قالب یک کلاس توسط بنده نوشته شده, لذا کافیه خیلی ساده فایل php مربوط به این کلاس رو در پلاگین یا اسکریپت خودتون include کنید و از اون استفاده کنید.

    این کد شامل 3 فایل PHP هست که یک فایل اصلی ( zarinpal_function.php ) شامل کلاس اصلی و دو فایل ( request.php و verify.php ) که به عنوان نمونه کد جهت ایجاد و فریفای کردن تراکنش هست.


    فایل zarinpal_function.php ( کلاس اصلی ) : https://miladworkshop.ir/paste/BYjU8u



    فایل request.php ( نمونه کد ایجاد تراکنش از طریق این کلاس ) : https://miladworkshop.ir/paste/6EzatE



    فایل verify.php ( نمونه کد ایجاد تراکنش از طریق این کلاس ) : https://miladworkshop.ir/paste/Ure4EL



    با صدا زدن تابع request به منظور ایجاد تراکنش و انتقال به صفحه پرداخت در پاسخ این موارد در دسترس و قابل استفاده هستند :

    کد:
    $result["Node"];         Respone Node ( ir | de | sandbox )
    $result["Method"];         Connection Method ( SOAP | CURL )
    $result["Status"];         ZarinPal Webservice Result Status Code
    $result["Message"];         ZarinPal Webservice Result Status Message
    $result["StartPay"];     ZarinPal Start Payment URL
    $result["Authority"];     ZarinPal Payment Authority ( Save this in Database )

    همچنین فراخوانی تابع verify به منظور برسی و وریفای کردن تراکنش این موارد در دسترس و قابل استفاده هستند :


    کد:
    $result["Node"];         Respone Node ( ir | de | sandbox )
    $result["Method"];         Connection Method ( SOAP | CURL )
    $result["Status"];         ZarinPal Callback Result Status Code
    $result["Amount"];         ZarinPal Callback Result Status Message
    $result["RefID"];         ZarinPal Tracking Code
    $result["Authority"];     ZarinPal Authority

    دانلود کلیه فایل ها در قالب یک فابل ZIP


    کپی برداری با ذکر منبع مجاز است :-)

    منبع : https://vrl.ir/zpc
    ویرایش توسط lizard.tiny : August 9th, 2018 در ساعت 12:23
    Contact Me >> Mobile : 09304443004 | Telegram ID : @miladworkshop | Email : info@miladworkshop.ir

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 5
    آخرين نوشته: June 12th, 2018, 14:25
  2. آموزش اتصال به صورت ریموت به SQL Server در سرور مجازی و اختصاصی
    توسط toltek در انجمن مباحث و منابع آموزشی
    پاسخ ها: 0
    آخرين نوشته: January 14th, 2017, 13:28
  3. پاسخ ها: 2
    آخرين نوشته: December 7th, 2016, 19:17
  4. پاسخ ها: 0
    آخرين نوشته: December 13th, 2014, 13:26

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •