Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

garik

Користувачі
  
  • Публікації

    128
  • З нами

  • Відвідування

Усі публікації користувача garik

  1. Установил новый IE9 beta, в админке пропала картинка со статистикой. ;), т.е. пропало все, что внутри таблицы.
  2. Так я же писал, что надо забыть про НомерЗаказа и формировать № Счет фактуры сразу, при нажатии кнопки ПОДТВЕРДИТЬ. Тогда все становится нормально, номера идут подряд, даже можно добавить ПрефиксНомера из админки. А НомерЗаказа можно убрать, ну и если очень надо, то изменить название НомерСчетФактуры на НомерЗаказа.
  3. Если кто знает, подскажите, как передать значения: <form action="<?php echo str_replace('&', '&', $action); ?>" method="post" enctype="multipart/form-data" id="form"> <td class="left"><input class="<?php echo $class . ' ' . $lowstyle; ?>" type="text" name="product[model]" value="<?php echo $product['model']; ?>" /></td> <td class="left"><?php echo '<a href="' . $url_product . $product['id'] . '&token=' . $this->session->data['token'] . '">' . $product['name'] . '</a>' ; ?></td> <td class="right"><input class="<?php echo $class . ' ' . $lowstyle; ?>" type="text" name="product[price]" value="<?php echo $product['price']; ?>" /></td> <td class="right"><input class="<?php echo $class . ' ' . $lowstyle; ?>" type="text" name="product[quantity]" value="<?php echo $product['quantity']; ?>" size="4" /></td> <td class="right"><input class="<?php echo $class . ' ' . $lowstyle; ?>" type="text" name="product[status]" value="<?php echo $product['status']; ?>" size="2" /></td></form> массива. Передаются только данные первого ряда. А как методом POST передать значения всей страницы, т.е. всех рядов таблицы?
  4. Если кто сможет помочь, то вот сам модуль. Может пригодится.
  5. Кто знает PHP, помогите переделать модуль StockReport. Хотелось-бы, чтобы не только выводились остатки и статус товара, а чтобы по кнопке «Сохранить» измененные позиции сохранялись. Кнопку добавил, форму добавил: …<a onclick="$('#form').submit();" class="button"><span><?php echo $button_save; ?></span></a><a onclick="location = '<?php echo $cancel; ?>';" class="button"><span><?php echo $button_cancel; ?></span></a>….<form action="<?php echo $action; ?>" method="post" enctype="multipart/form-data" id="form">….<td class="left"><input class="<?php echo $class . ' ' . $lowstyle; ?>" type="text" name="model" value="<?php echo $product['model']; ?>" /></td><td class="left"><?php echo '<a href="' . $url_product . $product['id'] . '&token=' . $this->session->data['token'] . '">' . $product['name'] . '</a>' ; ?></td><td class="right"><input class="<?php echo $class . ' ' . $lowstyle; ?>" type="text" name="price" value="<?php echo $product['price']; ?>" /></td><td class="right"><input class="<?php echo $class . ' ' . $lowstyle; ?>" type="text" name="stock" value="<?php echo $product['stock']; ?>" size="9" /></td><td class="right"><input class="<?php echo $class . ' ' . $lowstyle; ?>" type="text" name="status" value="<?php echo $product['status']; ?>" size="2" /></td>…В Controller в функции public function update() вставил$data = array(); foreach ($_POST as $key => $value) { $data[$key] = $value;}И надо еще в model добавить что-то типа:public function setProductsQuickUpdate($data) { foreach ($data as $key => $value) { $query = $this->db->query("UPDATE " . DB_PREFIX . "product SET quantity …. }}Но вот тут-то я и ничего не знаю, если кто может, плз. Помогите.
  6. В админ части: template/sale/order_form.tpl есть кнопка "Сохранить", подскажите, где происходит обработка события при нажатии (
  7. Если кто где-нибудь видел хороший модуль блокировки покупателей по IP. Напишите. Пробовал Privacy Protector - IP Trap от Steve Sherry. Но что-то мне не очень понравился. В последнее время пошел спам от покупателей, которые указывают адрес 111 @ mail.ru, а с этого адреса идет шквал спама со сплошным матом. Они-же предлагаю рассылку писем с таким-же текстом. А удаление покупателя с этим адресом дает возможность новой регистрации. Уже надоело.
  8. Если красная полоса, то ее не будет, это до открытия магазина.
  9. В админской части /model/sale/order.php, у меня строка 40, в функции public function deleteOrder($order_id) { надо удалить или закоментировать 2 строчки, как написано в предыдущем посте.
  10. Вот мой магазин http://elkom.cemena.ru Перехожу с Oscommerce на OpenCart(1.4.8) Принимаю и жду замечания и подсказки.
  11. У меня OpenCart 1.4.8b. Там делается просто, т.к. в функции УдалитьЗаказ уже все есть. Но как в 0.0.1 я не знаю. Вот сама функция в 1.4.8: public function deleteOrder($order_id) { if ($this->config->get('config_stock_subtract')) { $order_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order` WHERE order_status_id > '0' AND order_id = '" . (int)$order_id . "'"); if ($order_query->num_rows) { $product_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'"); foreach($product_query->rows as $product) { $this->db->query("UPDATE `" . DB_PREFIX . "product` SET quantity = (quantity + " . (int)$product['quantity'] . ") WHERE product_id = '" . (int)$product['product_id'] . "'"); $option_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "' AND order_product_id = '" . (int)$product['order_product_id'] . "'"); foreach ($option_query->rows as $option) { $this->db->query("UPDATE " . DB_PREFIX . "product_option_value SET quantity = (quantity + " . (int)$product['quantity'] . ") WHERE product_option_value_id = '" . (int)$option['product_option_value_id'] . "' AND subtract = '1'"); } } } } $this->db->query("DELETE FROM `" . DB_PREFIX . "order` WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_history WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_download WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_total WHERE order_id = '" . (int)$order_id . "'"); }Не хватает только config_stock_subtract. Можно или добавить переменную для возможности выбора, или убрать проверку. public function deleteOrder($order_id) {// if ($this->config->get('config_stock_subtract')) { $order_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order` WHERE order_status_id > '0' AND order_id = '" . (int)$order_id . "'"); if ($order_query->num_rows) { $product_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'"); foreach($product_query->rows as $product) { $this->db->query("UPDATE `" . DB_PREFIX . "product` SET quantity = (quantity + " . (int)$product['quantity'] . ") WHERE product_id = '" . (int)$product['product_id'] . "'"); $option_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "' AND order_product_id = '" . (int)$product['order_product_id'] . "'"); foreach ($option_query->rows as $option) { $this->db->query("UPDATE " . DB_PREFIX . "product_option_value SET quantity = (quantity + " . (int)$product['quantity'] . ") WHERE product_option_value_id = '" . (int)$option['product_option_value_id'] . "' AND subtract = '1'"); } } }// } $this->db->query("DELETE FROM `" . DB_PREFIX . "order` WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_history WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_download WHERE order_id = '" . (int)$order_id . "'"); $this->db->query("DELETE FROM " . DB_PREFIX . "order_total WHERE order_id = '" . (int)$order_id . "'"); }
  12. Отлично работает. Спасибо. А как поменять цвет шрифта?
  13. ДА! Все гениальное просто! А я как последний лох стараюсь убрать все выскакивающие ошибки.PS: Хотя, очень хотелось-бы убрать и эту. :cry:
  14. А я сделал немного по другому. В catalog/controller/product/product.php if ($product_info['quantity'] <= 0) { $this->data['stock'] = $product_info['stock']; } else { if ($this->config->get('config_stock_display')) { $this->data['stock'] = $product_info['quantity']; } else { $this->data['stock'] = $this->language->get('text_instock'); } }заменил на if ($product_info['quantity'] <= 0) { $this->data['stock'] = $this->language->get('text_outstock'); } else { if ($this->config->get('config_stock_display')) { $this->data['stock'] = $product_info['quantity']; } else { $this->data['stock'] = $product_info['stock']; } }и надо вставить $_['text_outstock'] = '[color= #FF0000;]Временно нет в наличии[/color]';В catalog/language/russian/product/product.php Хотя совсем правильно, это надо везде кнопку "В корзину" менять на надпись "Нет в наличии". Но это пока лень.
  15. Все, проблема решена, спасибо. :(
  16. Подскажите, как на invoice.tpl вывести способ оплаты. Что-то нифига не получается. :D
  17. Везде, где выскакивает такая ошибка надо эту строку заменить на соответствующую, например $this->data['return'] = $this->url->https('checkout/success');заменить на $this->data['return'] = HTTPS_SERVER . 'index.php?route=checkout/success';и т.д.
  18. При оформлении заказа без регистрации на странице оформить заказ (guest_step_3) выскакивает ошибка: Notice: Undefined index: subtract in ...catalogmodelcheckoutorder.php on line 75 Вот этот код: foreach ($data['products'] as $product) { $this->db->query("INSERT INTO " . DB_PREFIX . "order_product SET order_id = '" . (int)$order_id . "', product_id = '" . (int)$product['product_id'] . "', name = '" . $this->db->escape($product['name']) . "', model = '" . $this->db->escape($product['model']) . "', price = '" . (float)$product['price'] . "', total = '" . (float)$product['total'] . "', tax = '" . (float)$product['tax'] . "', quantity = '" . (int)$product['quantity'] . "', subtract = '" . (int)$product['subtract'] . "'");Если кто знает, что это такое, подскажите, плз!
  19. Все, для себя ворос решил. Формирование номера счета фактуры при нажатии "Подтвердить заказ". Если кому интересно: в catalog/model/checkout/order.php примерно 100 строка после $this->db->query("UPDATE `" . DB_PREFIX . "order` SET order_status_id = '" . (int)$order_status_id . "' WHERE order_id = '" . (int)$order_id . "'");вставить // Формируем номер счет фактуры $query = $this->db->query("SELECT MAX(invoice_id) AS invoice_id FROM `" . DB_PREFIX . "order`"); if ($query->row['invoice_id']) { $invoice_id = (int)$query->row['invoice_id'] + 1; } elseif ($this->config->get('config_invoice_id')) { $invoice_id = $this->config->get('config_invoice_id'); } else { $invoice_id = 1; } $this->db->query("UPDATE `" . DB_PREFIX . "order` SET invoice_id = '" . (int)$invoice_id . "', invoice_prefix = '" . $this->db->escape($this->config->get('config_invoice_prefix')) . "', date_modified = NOW() WHERE order_id = '" . (int)$order_id . "'");// Формируем номер счет фактуры
  20. Спасибо за столь быстрый ответ, буду пробовать, но дело не в базе, а в номерах заказа. Каждый заход на страницу confirm.php формирует новый номер. Поэтому-то и получается, что после 36 идет 64. Новый номер должен быть только при нажатии кнопки "Подтвердить заказ".Кстати, на странице confirm.php есть все данные заказа, адреса, виды платежа и доставки, примечание, а на success.php этого нет, и все поля в таблице остаются пустыми.
  21. Обыскал весь форум, но ответа так и не нашел. Может это только у меня? OpenCart 1.4.8b. Номер заказа формируется после перехода со страницы выбора способа оплаты на страницу подтверждения. Когда я на сранице где надо подтвердить заказ, то в базе уже заказ записан. Если вернуться и изменить что-то или в корзине или способ оплаты или доставки, то формируется еще один заказ уже с новым номером. Поэтому таблица order разрастается очень быстро. Как-бы сделать, чтобы и номер заказа и запись его в таблицу происходили-бы только после нажатия кнопки Подтвердить Заказ.
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.