۴ رسول طیبی‌راد
دکمه بازگشت درگاه سامان به آدرس callback هدایت نمیشه!
جامعه لاراول ایجاد شده در ۲۰ اسفند ۱۳۹۸

سلام

همه فرآیند کار رو مطابق با ویدئو انجام دادم، به درگاه وصل میشم و خطای "شماره پذیرنده نامعتبر است" ظاهر میشه اما با زدن دکمه "بازگشت" به مسیر  callback هدایت نمیشم!

حتی وقتی آدرس برگشت رو توی input مربوط به برگشت hardcode میکنم بازم اتفاقی نمیفته و با زدن بازگشت توی همون صفحه درگاه میمونه!

ضمنا آدرس برگشت رو توی پراپرتی except مربوط به VerifyCsrfToken قرار دادم.

 

ممنون میشم راهنمایی کنید.

سلام ، کد‌های سورس پروژه رو بگیرید و با کدهایی که خودتون نوشتید مطابقت بدید

چندین بار به همین شکل مشکلی که داشتم رو حل کردم 

مجید صادقی زاده ۲۰ اسفند ۱۳۹۸، ۱۵:۵۲

سلام، مشکل رو اینجوری حل کردم:

یه فایل blade ایجاد کردم و فرمی که باید به درگاه ارسال بشه رو توی اون قرار دادم. بعد، توی متد redirectToBank اون blade رو echo یا print میکنم:

private function redirectToBank($payment, $MID, $callback)
{
   echo view('saman', compact('payment', 'MID', 'callback'))->render();
}

 

این کار باعث شد من مطمئن بشم inputهای فرم به درستی مقداردهی میشن (با استفاده از curly braces).

saman.blade.php
<form action="https://sep.shaparak.ir/payment.aspx" method="POST" id="samanPayment">
    <input type="hidden" name="RedirectURL" value="{{ $callback }}">
    // other necessary inputs ...
</form> //send form by javascript!

 

 

 

رسول طیبی‌راد ۲۱ اسفند ۱۳۹۸، ۰۷:۰۴

سلام ... 

این کاری که شما انجام دادین مثل همون موردی هستش که ما داخل ویدیو انجامش دادیم و تفاوت خاصی نداره. 

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

مهرداد سامی ۲۱ اسفند ۱۳۹۸، ۰۷:۳۷

سلام منم همین مشکل رو داشتم مشکل از کد html بود که echo میکردیم این کد رو تست کن 

  echo "<form id='saman' action='https://sep.shaparak.ir/payment.aspx' method='post'>
           <input  type='hidden' name='Amount' value='$amount'>
           <input  type='hidden' name='MID' value='$this->merchant_id'>
           <input  type='hidden' name='ResNum' value='$order->code'>
           <input  type='hidden' name='RedirectURL' value='$this->callbackUrl'>     
         </form ><script >document.getElementById('saman').submit();</script>";

 

Mohammad Hamzeh ۲۱ اسفند ۱۳۹۸، ۱۷:۲۲