مشکل درگاه بانکی پس از بازگشت وقتی ssl سایت فعال می شود
با درود
وقتی ssl سایت را فعال می کنم در بازگشت از بانک دچار مشکل می شود ارور خاصی هم نمی دهد کد درگاه تجارت به شرح ذیل می باشد آیا باید برای ssl تغییراتی انجام داد؟
کد:
function tejarat_request(){
require_once "pack/nusoap/nusoap.php";
$SOAP = new nusoap_client('https://ikc.shaparak.ir/XToken/Tokens.xml',true);
$SOAP->soap_defencoding = 'UTF-8';
if($this->soap_error($SOAP, 711)) return $this->out_msg;
$parameters = array(
'amount' => $this->pay_amount,
'merchantId' => ENGINE::$config->epay->tejarat->merchant_id,
'invoiceNo' => $this->pay_id,
'paymentId' => $this->pay_id,
'revertURL' => $this->callback_url,
);
$result = $SOAP->call('MakeToken', array($parameters));
if($this->soap_error($SOAP, 712, $result)) return $this->out_msg;
$PAYINFO['pay'] = $result;
$this->save_info('info', json_encode($PAYINFO));
if($result['MakeTokenResult']['result'] == 'false')
return '<div class="alert danger">خطای 07130: خطا در اتصال به درگاه!</div>';
return '<form action="https://ikc.shaparak.ir/tpayment/payment/Index" method="post" id="EpayForm">'.
'<h5>'.ENGINE::fa_digits(number_format($this->pay_amount)).' ریـال</h5>'.
'<img src="lib/img/epay-tejarat.png" vspace="5">'.
'<p>درحال اتصال به درگاه پرداخت ...</p>'.
'<input type="hidden" name="token" value="'.$result['MakeTokenResult']['token'].'">'.
'<input type="hidden" name="merchantId" value="'.ENGINE::$config->epay->tejarat->merchant_id.'">'.
'<noscript><input type="submit" class="button" value="پرداخـت"></noscript></form>';
}
function tejarat_response(){
$this->pay_id = intval($_POST['paymentId']);
$this->pay_refid = $_POST['referenceId'];
$this->pay_amount = newdb()->read('amount','epayment',"id=$this->pay_id");
$this->save_info('ref_id', $this->pay_refid);
$PAYINFO['token'] = $_POST['token'];
$PAYINFO['resultCode'] = $_POST['resultCode'];
$this->save_info('info', json_encode($PAYINFO) );
if( $_POST['resultCode'] != 100 ) return false;
$SOAP = new nusoap_client('https://ikc.shaparak.ir/XVerify/Verify.xml',true);
$SOAP->soap_defencoding='UTF-8';
if($this->soap_error($SOAP, 721)) return false;
$params = array(
'token' => $_POST['token'],
'merchantId' => ENGINE::$config->epay->tejarat->merchant_id,
'referenceNumber' => $this->pay_refid,
'sha1Key' => ENGINE::$config->epay->tejarat->sha1key,
);
$result = $SOAP->call('KicccPaymentsVerification', $params);
$PAYINFO['verify'] = $result;
$this->save_info('info', json_encode($PAYINFO));
if($this->soap_error($SOAP, 722, $result)) return false;
return $result['KicccPaymentsVerificationResult'] == $this->pay_amount;
}
پاسخ : مشکل درگاه بانکی پس از بازگشت وقتی ssl سایت فعال می شود
سلام آگر درگاه روی http درخواست کرده باشید و الان روی https باشید باید به psp اعلام کنید تا تغییرات لازم انجام شود
پاسخ : مشکل درگاه بانکی پس از بازگشت وقتی ssl سایت فعال می شود
با تشکر
از بانک پیگیری کردم گفتند آدرس callback که ارسال می شود با http هستش باید یا https ارسال شود به همین خاطر می باشد
تو کجای کد باید این تغییرات را انجام بدم؟
تو خط 11 کد بالا 'revertURL' => $this->callback_url, اینجا آدرس ست می شود ولی نمی دونم باید چه تغیراتی بدم
البته در یه بخشی این کد را دارم
کد:
self::$HOST = strtolower(strtok($_SERVER['SERVER_PROTOCOL'],'/').'://'.$_SERVER['HTTP_HOST']);
احتمالا باید این یه تغییراتی بدم
لطفا راهنمایی نمایید
پاسخ : مشکل درگاه بانکی پس از بازگشت وقتی ssl سایت فعال می شود
نیاز به بررسی بیشتر داره و با دسترسی قابل حل هست . لطفا از طریق پیام خصوصی و یا آی دی تلگرام اطلاعات بیشتر رو ارسال کنید با هزینه جزئی قابل رفع هست.
پاسخ : مشکل درگاه بانکی پس از بازگشت وقتی ssl سایت فعال می شود
در در هد سایت آدرس با این کد ست می شود
کد:
self::$HOST = strtolower(strtok($_SERVER['SERVER_PROTOCOL'],'/').'://'.$_SERVER['HTTPS_HOST']);
وقتی به این آدرس تغییر می دم مشکل برطرف می شود
کد:
self::$HOST = 'https://sitename.com';
چطور می تونم تو کد بالا اینو ست کنم تا در بدون https و هم چنین با http کار کنه
می خوام طوری باشه که آدرس را دستی وارد نکنم برای چند سایت مختلف استفاده می کنم