• Уважаемый Гость! Если вы зарегистрировались на нашем форуме, значит вам нужна помощь! Мы всегда рады вам помочь, еще ни один пользователь не получил отказа! Но мы так же нуждаемся в Вашей поддержке. Проект полностью бесплатный, мы не имеем права требовать от вас денег, нам это и не нужно! Но от любой финансовой поддержки не откажемся. Проект развивается, но иногда очень тяжело его поддерживать, особенно в финансовом отношении. Если у вас есть возможность поддержать нас финансово, мы будем вам очень благодарны! С уважением, команда Оскласс Россия!
  • Изменение в правилах форума! В связи с огромным количеством вопросов поступающих в адрес технической поддержки мы решили изменить правила форума! Просим всех пользователей обратить внимание на данные изменения и четко их соблюдать!
  • Ребята, нуждаемся в программистах! Если хотите зарабатывать и есть время, пишите администраторам сайта. Есть база и инструменты, нужен опыт и знания =)
  • Уважаемые пользователи! На форуме появились разделы по работе с системой Yclas. Yclas - это скрипт доски объявлений. Нужны разработчики.

[StepbyStep] Публикация премиум объявления и оплата через Робокассу

Andy Larkin

Активный пользователь
Здравствуйте, полазив на англ форуме, нашел пару полезных топиков и решил создать тему, где буду описывать процесс создания.Тема Bender.
В item-post.php перед кнопкой Опубликовать вставляем код
HTML:
<div class="vip">
<input type="checkbox" name="checkboxVip" value="premium">
</div>
В файл functions.php вставляем код
PHP:
if (! function_exists('updateads'))
{
	function updateads($item) {
	  $b_premium=$_POST["checkboxVip"];
	  if ($b_premium=='premium'){	
		Item::newInstance()->update(array('b_premium' => 1), array('pk_i_id' => $item['pk_i_id']));
	  //  ..$category_fee=ModelPayment::newInstance()->getPublishPrice($item[fk_i_category_id]);
// osc_redirect_to(osc_route_url('payment-premium', array('itemId' => $item['pk_i_id'])));
	  }
	  else
	  {
//osc_redirect_to(osc_route_url('payment-publish', array('itemId' => $item['pk_i_id']))); 
	  }
	}
   osc_add_hook('posted_item', 'updateads');
}
Посмотреть в действии можно тут http://hvostyk.ru/index.php?page=item&action=item_add
После </form> в item-post.php добавляем
HTML:
<div class="controls button_v"></div>
и в тег <script></script> в конце страницы, вставляем параметры Робокассы(почитать можно тут: http://webformyself.com/priem-platezhej-pri-pomoshhi-servisa-robokassa/, не дожидаясь загрузки страницы, остановите страницу,чтоб убрать всплывающее окно:))
PHP:
<?php
$mrh_login = "hvostyk";
$mrh_pass1 = "blablabla";
 
// номер заказа
$inv_id = 1;
 
// описание заказа
$inv_desc = "Премиум";
 
// сумма заказа
$out_summ = "99.00";
 
// артикул товара товара
$shp_art = "05622";
 
// язык
$culture = "ru";
 
// формирование подписи
$crc  = md5("$mrh_login:$out_summ:$inv_id:$mrh_pass1:Shp_Art=$shp_art");
 
?>
и обработку чекбокса VIP
HTML:
	 $("#checkboxVip").click(function(){
 
   var controlsButton='<button class="ui-button ui-button-middle ui-button-main" type="submit">Опубликовать</button>';
 
var Button_vip="<"+"form"+" method='post' action='http://test.robokassa.ru/Index.aspx'>"+
"<"+"input type='hidden' name='MrchLogin' value='hvostyk' />"+
"<"+"input type='hidden' name='OutSum' value='99.00' />"+
"<"+"input type='hidden' name='InvId' value='1' />"+
"<"+"input type='hidden' name='Desc' value='Премиум' />"+
"<"+"input type='hidden' name='SignatureValue' value='<? echo $crc ?>' />"+
"<"+"input type='hidden' name='Shp_Art' value='<? echo $shp_art ?>' />"+
"<"+"input type='hidden' name='Culture' value='<? echo $culture ?>' />"+
"<"+"input id='button_vip' class='ui-button ui-button-middle ui-button-main' type='submit' value='Оплатить VIP' />"+
"</"+"form>";
 
 
//<!-- для реального режима измените action формы на https://merchant.roboxchange.com/Index.aspx —>
 
   if($("#checkboxVip").prop("checked")==true){
   $(".button_n button").remove();
   $('.button_v').html(Button_vip);
   }else{
   $("#button_vip").remove();
   $('.button_n').html(controlsButton);
  
   }
	 });
Теперь в зависимости от выбранного чекбокса, будет кнопка Опубликовать/Оплатить VIP
Использован тестовый сервис Робокассы!
При нажатии оплатить, перекидывает на страницу Робокассы, где при нажатии на перейти в Success Url будет опубликовываться объявление(Кто знает как это лучше сделать, напишите в ЛС).
Поиграться можно тут: http://hvostyk.ru/index.php?page=item&action=item_add
Если есть какие нибудь идеи и решения, пишите в тему.
 
Последнее редактирование:
1

112rub

Гость
сделал все как описано но не получается как в вашем примере. с чебоксом или нет не происходит перенаправления на робокассу.
код item-post.php во вложении. подскажите в чем ошибка
заранее спасибо.
 

Вложения

  • Новый текстовый документ.txt
    11,4 КБ · Просмотры: 18

Andy Larkin

Активный пользователь
сделал все как описано но не получается как в вашем примере. с чебоксом или нет не происходит перенаправления на робокассу.
код item-post.php во вложении. подскажите в чем ошибка
заранее спасибо.
Покажи сайт, код кривой скинул. И надо зарегистрироваться в робокассе, чтоб иметь $mrh_login и $mrh_pass1 для обработки платежа
 
1

112rub

Гость
Регистрация обязательна, активация нет. Иначе будет перекидывать на ошибку заказа
так вообще не куда не перекидывает! и кнопка не меняется!
 

Andy Larkin

Активный пользователь
Сделай на сайте подачу объявлений без регистрации(в админке найдешь), лень регистрироваться
 

aleksandr8i

Новичок
Пока не получается через ajax отправить поля,
проверку через jquery, при нажатии на кнопку оплатить
Дай ссылку на тему английского форума, если там что-то подобное описывалось. Скинь пжл. архивчик здесь или в личку admin{_|_}sms-ad.ru
если получиться прикрутить скину тебе рабочий вариант.
 

Andy Larkin

Активный пользователь
На англ форуме только плагин палки,материалов там нет или искать лучше надо.
основная задача сейчас опубликовать объявление через ajax, но сейчас у меня пока что времени нет с этим разбираться
 

Andy Larkin

Активный пользователь
Знатоки! подскажите как опубликовать объявление не через форму в item-post.php?
 
Верх