Создание нового способа регистрации на кассе / checkout

Создание нового способа регистрации на кассе / checkout

29.05.2019 10:41:26 Просмотров 19 Источник

Эй, ребята, я пытаюсь разместить информацию о клиентах на кассе / кассе-телефон, birthady, мобильный телефон О регистрации.php только электронная почта и пароль. Но проблема в том, что я не могу сохранить в базе данных, кроме имени, фамилии Opencart 2.3.0.2 я делаю все по шаблону по умолчанию, но у меня есть шаблон themeforest

Так что на tpl я поставил это на payment_adress

<div class="telefone required col-lg-6" style="padding-left: 0;">
                   <label class="col-sm-12 control-label" for="input-telephone"><?php //echo $entry_telephone; ?></label> 
                  <div class="col-sm-12 inputWithIcon">                     
                     <input type="text" name="telephone" value="" placeholder="<?php echo $entry_telephone; ?>" id="input-payment-telephone" class="form-control" title="Coloque o número de telefone celular ou fixo" required="required"/>
                     <i class="fa fa-phone" aria-hidden="true"></i>
                 </div>

на контроллере payment_adress

$data['entry_telephone'] = $this->language->get('entry_telephone'); 

и

if ((utf8_strlen($this->request->post['telephone']) < 3) || (utf8_strlen($this->request->post['telephone']) > 32)) {
                $json['error']['telephone'] = $this->language->get('error_telephone');
            }

и на модельном адресе я делаю еще одну публичную функцию, называемую addCustomer2. Цель-вставить в клиента всю информацию. Так вот этот файл я положил

public function addCustomer2($data) {
    if (isset($data['customer_group_id']) && is_array($this->config->get('config_customer_group_display')) && in_array($data['customer_group_id'], $this->config->get('config_customer_group_display'))) {
        $customer_group_id = $data['customer_group_id'];
    } else {
        $customer_group_id = $this->config->get('config_customer_group_id');
    }

    $this->load->model('account/customer_group');

    $customer_group_info = $this->model_account_customer_group->getCustomerGroup($customer_group_id);

    $this->db->query("INSERT INTO " . DB_PREFIX . "customer SET customer_group_id = '" . (int)$customer_group_id . "', store_id = '" . (int)$this->config->get('config_store_id') . "', language_id = '" . (int)$this->config->get('config_language_id') . "', firstname = '" . strtoupper($this->db->escape($data['firstname'])) . "', lastname = '" . strtoupper($this->db->escape($data['lastname'])) . "', telephone = '" . $this->db->escape($data['telephone']) . "', custom_field = '" . $this->db->escape(isset($data['custom_field']['account']) ? json_encode($data['custom_field']['account']) : '') . "', salt = '" . $this->db->escape($salt = token(9)) . "', ip = '" . $this->db->escape($this->request->server['REMOTE_ADDR']) . "', status = '1', approved = '" . (int)!$customer_group_info['approval'] . "', date_added = NOW()");}

Нет ошибки сообщения о моей конфигурации, но не сохраняет информацию. Кто-нибудь может мне помочь, пожалуйста

У вопроса есть решение - Посмотреть?

Ответы - Создание нового способа регистрации на кассе / checkout / Making a New way to Register on checkout/checkout

Является ответом!
Vasile Ciotu

02.06.2019 06:50:23

Вы проверили, вызывается ли в контроллере функция модели addCustomer2 (не addCustomer)

Из того, что я понял из Вашего сообщения (если вы не получаете никаких ошибок), кажется, в контроллере называется старая функция addCustomer, а не Ваша новая функция.

Кроме того, если у вас есть некоторые расширения OCMOD, и эта модель была изменена, убедитесь, что вы проверили хранение/модификацию/... и перестроить кэш ocmod (если вы изменили файл, который также был изменен другими расширениями ocmod)

Хорошего дня

https://stackoverflow.com/questions/56367455/making-a-new-way-to-register-on-checkout-checkout/56416595#comment99583837_56416595
Вы правы, решение было поставлено addCustomer2 не addCustomer. Это дело я поставил addAdress2. Что я сделал, так это сделал новый Кокс обновление oc_customer, когда клиент текст firstname, фамилия и телефон. Итак, в том же файле модель / учетная запись / адрес.php я изменил способ сохранения информации. Целью настоящего Кодекса является: "зарегистрироваться".tpl запрашивает только электронную почту и пароль. Когда клиент кладет товар в корзину, он перенаправляется на кассу/кассу, а затем он должен поместить всю информацию: кулак и фамилию, телефон и полный адрес.
Закрыть X