Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

amfsota

Newbie
  
  • Posts

    47
  • Joined

  • Last visited

About amfsota

  • Birthday 12/23/1981

Information

  • Gender
    Мужчина
  • City:
    Санкт-Петербург
  • Interests
    Программирование, 3Dмоделинг, ЧПУ

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

amfsota's Achievements

Contributor

Contributor (5/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges

0

Reputation

  1. Возвращаюсь к вопросу. Так и не нашёл решения. Или я тупой или одно из двух. Где смотреть? Можете хоть файл подсказать?
  2. Лично мне нужно передать card_id в контроллер product
  3. в передаче параметров при включенном ЧПУ как это реализовать?
  4. Получилось решить проблему? У меня тоже вопрос встал.
  5. Всем привет. Работаю на OPENCART.CMS Версия 2.1.0.1.10 В магазине включён ЧПУ. требуется передать параметры ссылкой типа: /index.php?route=product/product&product_id=4&cart_id=29 чтобы можно было их использовать в контроллере product/product ЧПУ подменяет все ссылки и удаляет все параметры, добавляя свои Помогите, пожалуйста.
  6. Вопрос снят. Возможно был какой-то дефект в файле library/finance.php короче скопировал весь код из него создал новый файл скопипастил - и всё, никаких ошибок.
  7. почему вылезает ошибка? ajax запросом шлю в контроллер данные с формы: $(document).ready(function() { $('#button-addpayment').on('click', function() { $.ajax({ url: 'index.php?route=module/finance/addPayment&token=<?php echo $token;?>', type: 'post', dataType: 'json', data: new FormData($('#form-upload')[0]), cache: false, contentType: false, processData: false, beforeSend: function() { $('#button-addpayment').button('loading'); }, complete: function() { $('#button-addpayment').button('reset'); }, success: function(json) { hideErrors(); if (json['success']) { alert (json['success']); } else { showErrors(json['error']); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); }); }); летит всё в функцию: public function addPayment() { require_once (DIR_SYSTEM.'library/finance.php');// из-за этих строчек вылетает ошибка $finance = new Finance($this->registry);// из-за этих строчек вылетает ошибка $json=array(); $json['success']='УСПЕШНО!!!'; $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } когда регистрирую класс и/или создаю экземпляр класса появляется мерзкая ошибка: "Unexpectetd token in JSON at position 0" причём регистрируется всё нормально и все методы класса отрабатываются как победить этот баг кто-нибудь знает?
  8. Мдаа... Нет ответа. Неужели никто не знает? Опять разобрался сам. Зачем-то в классе cart в конструкторе происходит подчистка корзины от устаревших данных и требуемая перезапись значений. Вот кусок кода, может кому нужно будет: public function __construct($registry) { $this->config = $registry->get('config'); $this->customer = $registry->get('customer'); $this->session = $registry->get('session'); $this->db = $registry->get('db'); $this->tax = $registry->get('tax'); $this->weight = $registry->get('weight'); $this->load = $registry->get('load'); $this->registry = $registry; // Remove all the expired carts with no customer ID $this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE customer_id = '0' AND date_added < DATE_SUB(NOW(), INTERVAL 1 HOUR)"); if ($this->customer->getId()) { // We want to change the session ID on all the old items in the customers cart $this->db->query("UPDATE " . DB_PREFIX . "cart SET session_id = '" . $this->db->escape($this->session->getId()) . "' WHERE customer_id = '" . (int)$this->customer->getId() . "'"); // Once the customer is logged in we want to update the customer ID on all items he has $cart_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "cart WHERE customer_id = '0' AND session_id = '" . $this->db->escape($this->session->getId()) . "'"); foreach ($cart_query->rows as $cart) { $this->db->query("DELETE FROM " . DB_PREFIX . "cart WHERE cart_id = '" . (int)$cart['cart_id'] . "'"); // The advantage of using $this->add is that it will check if the products already exist and increaser the quantity if necessary. $this->add($cart['product_id'], $cart['quantity'], json_decode($cart['option']), $cart['recurring_id']); } } } Кстати, тут ещё и время хранения товаров не авторизованных пользователей устанавливается. Тема закрыта.
  9. Ребята очень надо разобраться, помогите, пожалуйста. Написал калькуляторы со своими свойствами, из карточки товара все цены подтягиваются, в админке тоже всё ОК, но если пользователь с товаром авторизуется - проблема. Почему бы просто не переписать customer_id в таблице cart, но нет почему-то затирается запись а вместо неё рисуется новая с дефолтными свойствами.
  10. Боюсь Вам надо много чего переписывать. Вам, получается, необходимо к каждому пункту фильтра добавлять список отключаемых пунктов. Здесь и переделка админки и базы нужна.
  11. Всем привет. Возникла очередная проблемка с Opencart 2.0 Не авторизованный пользователь кладёт в корзину покупки, затем на этапе оформления заказа авторизуется. У пользователя в профиле могут быть сохранённые товары в корзине, к ним приплюсовываются те товары, которые он выбрал без авторизации. Не могу найти, где происходит сверка товаров и слияние двух корзин. Авторизация происходит в контроллере checkout/login.php (запускается ajax-ом при нажатии на кнопку button-login) Далее возвращается json['redirect']="...checkout/checkout" Однако обновление корзины происходит до загрузки скрипта checkout.php Не подскажите, где?
  12. Спасибо. Видимо когда exit вставлял не сохранил перед проверкой?
  13. Подскажите, пожалуйста, в каком контроллере/моделе идёт вызов функции mail->send после подтверждения заказа? Стоит вариант оплаты bank_transfer. Кнопка "Подтверждение заказа" запускает ajax: $('#button-confirm').on('click', function() { alert ('sdsdddddddddddddd');//отладочная точка $.ajax({ url: 'index.php?route=payment/bank_transfer/confirm', type: 'post', dataType: 'json', beforeSend: function() { $('#button-confirm').button('loading'); }, complete: function() { // alert (json['success']); $('#button-confirm').button('reset'); }, success: function(json) { //alert (json['success']); location = 'http://mymetab.ru/index.php?route=checkout/success'; }, error: function(xhr, ajaxOptions, thrownError) { //alert ($json['success']); //alert ('ERROR'); } }); }); вторая строчка с alert выводит сообщение на экран. Пока сообщение висит email не отправляется. Жмём OK. Далее должна вызываться функция confirm: public function confirm() { exit;//отладочная точка $json=array(); if ($this->session->data['payment_method']['code'] == 'bank_transfer') { $this->load->language('payment/bank_transfer'); $this->load->model('checkout/order'); $comment = $this->language->get('text_instruction') . "\n\n"; $comment .= $this->config->get('bank_transfer_bank' . $this->config->get('config_language_id')) . "\n\n"; $comment .= $this->language->get('text_payment'); //создаём счёт на оплату $this->registry->set('documents', new documents($this->registry)); $data['doc_invoice'] = $this->documents->createInvoice($this->session->data['order_id']); $json['success']='good'; //запоминаем в сессии $this->session->data['doc_invoice'] = $data['doc_invoice']; $this->model_checkout_order->addOrderHistory($this->session->data['order_id'], $this->config->get('bank_transfer_order_status_id'), $comment, true); } $this->response->addHeader('Content-Type: application/json'); $this->response->setOutput(json_encode($json)); } нигде мылом не пахнет. Ставлю в первую строчку функции exit; и при нажатии на кнопку письмо всё-равно летит покупателю. Кто вклинивается между ajax запросом и функцией confirm?
  14. Где? Все ваши посты пересмотрел, нет там нигде работающего решения. Вся проблема была именно в видимости register, а вы не предложили ничего для её решения. Всё. тема закрыта. Спасибо всем участвующим в дискуссии вы очень помогли, хоть и не конкретным решением, но своими ответами натолкнули на нужную мысль.
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.