PDA

View Full Version : مبتدی: مشکل در تعداد کاراکتر مستعار فارسی مطلب در پرداخت(ارور 400 Bad Request)



solan007
جمعه 27 آذر 1394, 00:20 صبح
سلام
دوستان ما تو جوملا یک افزونه ای رو به درگاه پرداخت زرین پال وصل کردیم
وقتی تعداد کاراکتر فارسی مستعار پست از یه حدی زیاد میشه بعد از پرداخت و کسر مبلغ با ارور زیر مواجه میشم در حالی که این مورد برای مستعار لاتین وجود نداره و با مشکل مواجه نمیشه

400 Bad Request
nginx

دوستان اگه می تونن راهنمایی کنن
ممنون

solan007
جمعه 27 آذر 1394, 00:22 صبح
set zarinpal
$zarinpal_api = $db->getQuery(true)->select('setting_value')->from($db->quoteName('#__jdownloads_config'))->where('setting_name="zarinpal_api"'); $db->setQuery($zarinpal_api); $MerchantID = $db->loadResult(); $zarinpal_vahed = $db->getQuery(true)->select('setting_value')->from($db->quoteName('#__jdownloads_config'))->where('setting_name="zarinpal_vahed"'); $db->setQuery($zarinpal_vahed); $zarinpal_vaheds = $db->loadResult(); if($zarinpal_vaheds == '1'){ $Amount = (int)($files[0]->price)/10; $Amount_t = 'ریال'; }else{ $Amount = (int)($files[0]->price); $Amount_t = 'تومان'; }
if($files[0]->price > 0){ if(!$user->guest){ $link = '<form method="POST" action=""><input type="submit" name="zarinpal" value=" خرید آنلاین : '.$files[0]->price.' '.$Amount_t.'" style="background: rgb(27, 188, 155) none repeat scroll 0% 0%;padding: 10px 20px;border-radius: 10px;border: 1px solid rgb(59, 178, 38);font: 15px tahoma;color: #fff;" /></form>'; $select_order = $db->getQuery(true)->select('trans_id')->from($db->quoteName('#__zarinpal_jdownload'))->where('user_id="'.$user->get('id').'" and file_id="'.(int)$files[0]->file_id.'"'); $db->setQuery($select_order); if($db->loadResult() > 0){ if ($jlistConfig['use.css.buttons.instead.icons'] == '0'){ $link = '<div id="countdown" style="text-align:center"><a href="'.$download_link.'" target="'.$targed.'" title="'.JText::_('COM_JDOWNLOADS_LINKTEXT_ZIP').'" ><img src="'.JURI::base().'images/jdownloads/downloadimages/'.$jlistConfig['download.pic.details'].'" style="border:0px;" alt="'.JText::_('COM_JDOWNLOADS_LINKTEXT_ZIP').'" /></a></div>'; } else { $link = '<div id="countdown" style="text-align:center"><a href="'.$download_link.'" target="'.$targed.'" title="'.JText::_('COM_JDOWNLOADS_LINKTEXT_ZIP').'" class="jdbutton '.$download_color.' '.$download_size.'">'.JText::_('COM_JDOWNLOADS_LINKTEXT_DOWNLOAD_URL') .'</a></div>'; } } }else{ $link = '<center><div style="text-align: center;background: rgb(192, 57, 43) none repeat scroll 0% 0%;color: rgb(255, 255, 255);padding: 10px;width: 60%;font-weight: bold;border-radius: 3px;">برای خرید این محصول باید وارد اکانت کاربری خود شوید </div> <div style="text-align: center;background: rgb(27, 188, 155) none repeat scroll 0% 0%;color: rgb(255, 255, 255);padding: 10px;width: 60%;font-weight: bold;border-radius: 3px;">'.$files[0]->price.' '.$Amount_t.'</div></center>'; } if(JRequest::getVar('zarinpal')){ $CallbackURL = JRoute::_(htmlspecialchars(JUri::getInstance()->toString()), true, $params->get('usesecure')); $client = new SoapClient('https://de.zarinpal.com/pg/services/WebGate/wsdl', array('encoding' => 'UTF-8')); $result = $client->PaymentRequest(array( 'MerchantID' => $MerchantID, 'Amount' => $Amount, 'Description' => $files[0]->file_title, 'Email' => '', 'Mobile' => '', 'CallbackURL' => $CallbackURL )); if($result->Status == 100){ $time_zarin = time(); $my_order = $db->getQuery(true)->select('id')->from($db->quoteName('#__zarinpal_jdownload'))->where('user_id="'.$user->get('id').'" and time="'.$time_zarin.'"'); $db->setQuery($my_order); if($db->loadResult() > 0){ }else{ $columns = array('user_id', 'file_id','get_id','time'); $values = array($user->get('id'),(int)$files[0]->file_id,$result->Authority,$time_zarin); $query = $db->getQuery(true); $query->insert($db->quoteName('#__zarinpal_jdownload'))->columns($db->quoteName($columns))->values(implode(',', $values)); $db->setQuery($query); $db->execute(); } $link = "<script>document.location='https://www.zarinpal.com/pg/StartPay/".$result->Authority."'</script>"; } else { $link = '<center><div style="text-align: center;background: rgb(192, 57, 43) none repeat scroll 0% 0%;color: rgb(255, 255, 255);padding: 10px;width: 60%;font-weight: bold;border-radius: 3px;"> خطا : '.$result->Status.'</div></center>'; } } if(JRequest::getVar('Authority')){ $Authority = JRequest::getVar('Authority'); if(JRequest::getVar('Status') == 'OK'){ $client = new SoapClient('https://de.zarinpal.com/pg/services/WebGate/wsdl', array('encoding' => 'UTF-8')); $result = $client->PaymentVerification(array( 'MerchantID' => $MerchantID, 'Authority' => $Authority, 'Amount' => $Amount )); if($result->Status == 100){ $query = $db->getQuery(true); $query->update($db->quoteName('#__zarinpal_jdownload'))->set('trans_id="'.$result->RefID.'"')->where('user_id="'.$user->get('id').'" and file_id="'.(int)$files[0]->file_id.'"'); $db->setQuery($query); $db->execute();
$linke_red = explode('?Authority',JRoute::_(htmlspecialchars(JU ri::getInstance()->toString()), true, $params->get('usesecure'))); $link = '<center><div style="text-align: center;background: #1E824C none repeat scroll 0% 0%;color: rgb(255, 255, 255);padding: 10px;width: 60%;font-weight: bold;border-radius: 3px;"> نتیجه : تراکنش انجام شد به شماره ارجاع '. $result->RefID .' برای مشاده لینک دانلود <a href="'.$linke_red[0].'">اینجا کلیک کنید</a></div></center>' ; }else{ $link = '<center><div style="text-align: center;background: rgb(192, 57, 43) none repeat scroll 0% 0%;color: rgb(255, 255, 255);padding: 10px;width: 60%;font-weight: bold;border-radius: 3px;"> تراکنش با خطا مواجه شد : '. $result->Status .'</div></center>'; }
}else{ $link = '<center><div style="text-align: center;background: rgb(192, 57, 43) none repeat scroll 0% 0%;color: rgb(255, 255, 255);padding: 10px;width: 60%;font-weight: bold;border-radius: 3px;"> شما از انجام تراکنش انصراف دادید </div></center>'; } }
}else{
if ($jlistConfig['use.css.buttons.instead.icons'] == '0'){ $link = '<div id="countdown" style="text-align:center"><a href="'.$download_link.'" target="'.$targed.'" title="'.JText::_('COM_JDOWNLOADS_LINKTEXT_ZIP').'" ><img src="'.JURI::base().'images/jdownloads/downloadimages/'.$jlistConfig['download.pic.details'].'" style="border:0px;" alt="'.JText::_('COM_JDOWNLOADS_LINKTEXT_ZIP').'" /></a></div>'; } else {