UMIhelp

Разработка сайта на UMI.CMS => Настройка системы и модулей => Тема начата: rasergiy от 01 Апреля 2016, 13:35:58

Название: Сохранение данных customer в emarket one click
Отправлено: rasergiy от 01 Апреля 2016, 13:35:58
Добрый день. Имеется сайт с простым магазином, имеется возможность делать заказ без регистрации - one click. При таком способе в заказе не отображаются никакие из введеных данных пользователя (имя, отчество, фамилия, город, емейл, телефон). В modules/emarket/__custom.php имеется  функция saveinfo, но она не получает никаких данных:  getRequest('data'); возвращает NULL.

Куда копать? Каким образом мне отладить эту ситуацию, чтобы понять где эти данные теряются?

public function saveinfo(){
$cmsController = cmsController::getInstance();
$order = $this->getBasketOrder(false);
$dataModule = $cmsController->getModule('data');
$data = getRequest('data');
 $customer = customer::get();
$dataModule->saveEditedObject($customer->id, false, true);
$comment = htmlspecialchars(getRequest('comment'));
$order->comment = $comment;
$order->commit();
$order->order();
$url = "{$this->pre_lang}/".cmsController::getInstance()->getUrlPrefix()."order/success/?order_id=".$order->number; //new
 $this->redirect($url);
}

Название: Re: Сохранение данных customer в emarket one click
Отправлено: rasergiy от 01 Апреля 2016, 14:08:21
Форма отправки создается корректно:

   <form class="ffp" action="/emarket/saveinfo/" method=post>   
         <input type="hidden" name="name" value="" />
         <div class="form">

            <div class="left">
         <input type="text" class="text_input fname required" name="data[1313724][fname]" value="Fname" class="textinputs" placeholder="Имя *"/>   <input type="text" class="text_input lname " name="data[1313724][lname]" value="" class="textinputs" placeholder="Фамилия "/>   <input type="text" class="text_input father_name " name="data[1313724][father_name]" value="" class="textinputs" placeholder="Отчество "/>   <input type="text" class="text_input company " name="data[1313724][company]" value="" class="textinputs" placeholder="Компания "/>   <input type="text" class="text_input city required" name="data[1313724][city]" value="" class="textinputs" placeholder="Город *"/>      <input type="text" class="text_input email required" name="data[1313724][email]" value="" class="textinputs" placeholder="E-mail *"/>   <input type="text" class="text_input phone required" name="data[1313724][phone]" value="" class="textinputs" placeholder="Телефон *"/>
</div>
            
            <div class="right">
               <textarea class="input_area" name="comment" placeholder="Ваш коментарий" ></textarea>
            </div>
            <div class="clear"></div>
            <div class="warning">* - поля, обязательные для заполнения</div>
         </div>         
         
         <input id="order_submit_button" type="submit" class="submit" value="Оформить заказ" />
      </form>
Название: Re: Сохранение данных customer в emarket one click
Отправлено: aghigay от 01 Апреля 2016, 15:42:17
Добавьте в saveinfo сразу после старта:
print_r($_REQUEST);
die();

Жестко конечно, но эффективно