- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте. Есть такой код
class robokassa {
private $gateway = 'http://test.robokassa.ru/Index.aspx?';
private $code = 'robokassa';
private $payment;
private $order;
private $parameter;
private $order_type;
private $pay_result;
public function __construct($payment_info,$order_info){
$this->robokassa($payment_info,$order_info);
}
public function robokassa($payment_info = array(),$order_info = array()){
if(!empty($payment_info) and !empty($order_info)){
$this->payment = $payment_info;
$this->order = $order_info;
}
}
/**
* Запросы для получения оплаты интерфейс
*
* @return string
*/
public function submit(){
$mrh_pass1 = $this->payment['payment_config']['mrh_pass1'];
$mrh_login = $this->payment['payment_config']['mrh_login'];
$encoding = "utf-8";
$inv_desc = $this->order['subject']; //Навание товара
$inv_id = $this->order['pay_sn']; //Внешний номер транзакции
$in_curr = '';
$culture = 'ru';
$out_summ = $this->order['pay_amount'];//общая стоимость заказа
$shp_extra_common_param = $this->order['order_type'];
$shp_out_trade_no = $this->order['pay_sn'];
$shp_trade_no = $this->order['pay_sn'];
$shp_payment_code = 'robokassa';
// формирование подписи
// generate signature
$crc = md5("$mrh_login:$out_summ:$inv_id:$mrh_pass1:Shp_extra_common_param=$shp_extra_common_param:Shp_out_trade_no=$shp_out_trade_no:Shp_payment_code=$shp_payment_code:Shp_trade_no=$shp_trade_no");
$parameter = array(
'MrchLogin' => $mrh_login,
'OutSum' => $out_summ,
'InvId' => $inv_id,
'IncCurrLabel' => $in_curr,
'Desc' => $inv_desc,
'SignatureValue' => $crc,
'Culture' => $culture,
'Encoding' => $encoding,
'Shp_extra_common_param' =>$shp_extra_common_param,
'Shp_out_trade_no' =>$shp_out_trade_no,
'Shp_payment_code' =>$shp_payment_code,
'Shp_trade_no' =>$shp_trade_no
);
$html = '<html><head></head><body>';
$html .= '<form method="post" name="E_FORM" action="http://test.robokassa.ru/Index.aspx?">';
foreach ($parameter as $key => $val){
$html .= "<input type='hidden' name='$key' value='$val' />";
}
$html .= '</form><script type="text/javascript">document.E_FORM.submit();</script>';
$html .= '</body></html>';
echo $html;
exit;
}
public function return_verify(){
$this->order_type = $this->order['order_type'];
$this->pay_result = true;
return true;
}
public function notify_verify() {
return $this->return_verify();
}
public function getPayResult($param){
return $this->pay_result;
}
public function __get($name){
return $this->$name;
}
}
В функции
public function submit()
используется
$shp_extra_common_param = $this->order['order_type'];
А в функции
public function return_verify()
С таким же параметром ни чего не передается
$this->order_type = $this->order['order_type'];
Подскажите как правильно сделать что бы использовать эти данные?
Снова вы со своим кодом, вам же вроде уже ответили..
Если ничего не передается, значит массив $order_info либо пуст, либо в нем отсутствует данный ключ.