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

Frunky

Новачок
  
  • Публікації

    15
  • З нами

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

Frunky's Achievements

Apprentice

Apprentice (3/14)

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

Recent Badges

0

Репутація

  1. Блин, как же бесят такие люди, да, может и плохой код, но он - работает, и это гораздо лучше, чем писать бесполезные сообщения..
  2. Кому надо, вот, готовый скрипт: <?php init_pdo(); function init_pdo () { try { $dsn = "mysql:dbname=dbname;host=localhost"; $pdo = new PDO($dsn, 'dbuser', 'password', array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8' )); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); for($i=0; $i <= 7000; $i++){ $coupon = ''; if($i < 10) { $coupon = '000'.$i; } else if($i < 100) { $coupon = '00'.$i; } else if($i < 1000) { $coupon = '0'.$i; } else if($i <= 7000) { $coupon = $i; } $sql = "insert into `oc_coupon` (`name`, `code`, `type`,`discount`,`logged`,`shipping`,`total`,`date_start`,`date_end`,`uses_total`,`uses_customer`,`status`,`date_added`) values ('Купоны', '".(string) $coupon."' ,'P','3','0','0','0',STR_TO_DATE('2015-10-28', '%Y-%m-%d'),STR_TO_DATE('2085-11-30', '%Y-%m-%d'),'1','1','1',STR_TO_DATE('2015-10-28', '%Y-%m-%d'))"; $q = $pdo->prepare($sql); $q->execute(); } } catch(PDOException $e) { var_dump($e); die; } return $pdo; } ?>
  3. Всем спасибо большое, разобрался)
  4. Друг, спасибо большое, но , к сожалению, не создает 7000 купонов, а лишь один. нужно как-то зациклить 'code' до 7000 с 0000
  5. Всем доброго времени суток! Срочно нужна помощь с купонами. Нужно создать 7000 купонов с одинаковыми параметрами,единственное различие это - номера купонов, их нумерация должна быть в такой последовательности: 0000,0001,0002...6996,6997,6998,6999,7000.и т.д Параметры: скидка 3%, срок действия бесконечный ну или лет 50. Каким способом это можно реализовать? Было бы здорово,если был бы какой-нибудь модуль,но такового я не нашёл. Экспорт через Excel?тогда как именно заполнить документ? Или же сделать sql запрос? Какой? Прошу помощи, спасибо большое!
  6. Доброго времени суток! Столкнулся с такой проблемой, на сайте нужно сделать 6000 купонов с 3% скидкой, кол-во использования - неограниченно, срок действия - бесконечный, нумерация купонов от 0001-6000(т.е 0002,0003,0004..5292,5293 и.тд) Естественно, создавать каждый купон отдельно, это не очень круто:) У меня в таблице купонов уже есть 3 купона, какой sql запрос нужно сделать, чтобы он автоматически сгенерировал все купоны по подобию. В целом, я имею представление, что нужно зациклить все это создание купонов, но как реализовать не знаю. Может быть вообще есть такой модуль? или как-нибудь экспортировать купоны из таблицы excel'a. Спасибо за внимание, надеюсь на Вашу помощь.
  7. Да,я немного приборзел. Спасибо большое еще раз за помощь)
  8. Круто! Все получилось!Только вот проблема.Допустим у нас 4 опции( 2 кг. 4 кг. 6 кг и 8 кг.) цена соответственно везде разная,но ,если кликнуть на любую опцию , цена выбирается стандартная. Как с этим быть?
  9. Tom, Спасибо большущее!!!Выручили И главное оперативно-то как!А как сделать так, что бы по клику на опцию(чекбокс) происходило добавление товара в корзину? Я примерно представляю что это реализуется через яваскрипт. нужно в опцию добавить функцию onclick в ,допустим, <label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> или <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" id="option-value-<?php echo $option_value['product_option_value_id']; ?>" /> ?Еще раз спасибо
  10. Извиняюсь за долгий ответ. В общем, я взял часть кода из catalog/controller/product.php $this->data['options'] = array(); foreach ($this->model_catalog_product->getProductOptions($this->request->get['product_id']) as $option) { if ($option['type'] == 'select' || $option['type'] == 'radio' || $option['type'] == 'checkbox' || $option['type'] == 'image') { $option_value_data = array(); foreach ($option['option_value'] as $option_value) { if (!$option_value['subtract'] || ($option_value['quantity'] > 0)) { if ((($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) && (float)$option_value['price']) { $price = $this->currency->format($this->tax->calculate($option_value['price'], $product_info['tax_class_id'], $this->config->get('config_tax'))); } else { $price = false; } $option_value_data[] = array( 'product_option_value_id' => $option_value['product_option_value_id'], 'option_value_id' => $option_value['option_value_id'], 'name' => $option_value['name'], 'image' => $this->model_tool_image->resize($option_value['image'], 50, 50), 'price' => $price, 'price_prefix' => $option_value['price_prefix'] ); } } $this->data['options'][] = array( 'product_option_id' => $option['product_option_id'], 'option_id' => $option['option_id'], 'name' => $option['name'], 'type' => $option['type'], 'option_value' => $option_value_data, 'required' => $option['required'] ); } elseif ($option['type'] == 'text' || $option['type'] == 'textarea' || $option['type'] == 'file' || $option['type'] == 'date' || $option['type'] == 'datetime' || $option['type'] == 'time') { $this->data['options'][] = array( 'product_option_id' => $option['product_option_id'], 'option_id' => $option['option_id'], 'name' => $option['name'], 'type' => $option['type'], 'option_value' => $option['option_value'], 'required' => $option['required'] ); } } и вставил в catalog/contoller/category.php перед $this->data['products'][] = array( Далее изменил вид шаблона категории. Из Catalog/view/theme/Ancart(так называется тема)/template/product/product.tpl взял часть кода <?php if ($options) { ?> <div class="options"> <h2><?php echo $text_option; ?></h2> <br /> <?php foreach ($options as $option) { ?> <?php if ($option['type'] == 'select') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <select name="option[<?php echo $option['product_option_id']; ?>]"> <option value=""><?php echo $text_select; ?></option> <?php foreach ($option['option_value'] as $option_value) { ?> <option value="<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </option> <?php } ?> </select> </div> <br /> <?php } ?> <?php if ($option['type'] == 'radio') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <?php foreach ($option['option_value'] as $option_value) { ?> <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" id="option-value-<?php echo $option_value['product_option_value_id']; ?>" /> <label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> <br /> <?php } ?> </div> <br /> <?php } ?> <?php if ($option['type'] == 'checkbox') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <?php foreach ($option['option_value'] as $option_value) { ?> <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" id="option-value-<?php echo $option_value['product_option_value_id']; ?>" /> <label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label> <br /> <?php } ?> </div> <br /> <?php } ?> <?php if ($option['type'] == 'image') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <table class="option-image"> <?php foreach ($option['option_value'] as $option_value) { ?> <tr> <td style="width: 1px;"><input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" id="option-value-<?php echo $option_value['product_option_value_id']; ?>" /></td> <td><label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><img src="<?php echo $option_value['image']; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" /></label></td> <td><label for="option-value-<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?> (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>) <?php } ?> </label></td> </tr> <?php } ?> </table> </div> <br /> <?php } ?> <?php if ($option['type'] == 'text') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['option_value']; ?>" /> </div> <br /> <?php } ?> <?php if ($option['type'] == 'textarea') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <textarea name="option[<?php echo $option['product_option_id']; ?>]" cols="40" rows="5"><?php echo $option['option_value']; ?></textarea> </div> <br /> <?php } ?> <?php if ($option['type'] == 'file') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <input type="button" value="<?php echo $button_upload; ?>" id="button-option-<?php echo $option['product_option_id']; ?>" class="button"> <input type="hidden" name="option[<?php echo $option['product_option_id']; ?>]" value="" /> </div> <br /> <?php } ?> <?php if ($option['type'] == 'date') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['option_value']; ?>" class="date" /> </div> <br /> <?php } ?> <?php if ($option['type'] == 'datetime') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['option_value']; ?>" class="datetime" /> </div> <br /> <?php } ?> <?php if ($option['type'] == 'time') { ?> <div id="option-<?php echo $option['product_option_id']; ?>" class="option"> <?php if ($option['required']) { ?> <span class="required">*</span> <?php } ?> <b><?php echo $option['name']; ?>:</b><br /> <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['option_value']; ?>" class="time" /> </div> <br /> <?php } ?> <?php } ?> </div> <?php } ?> И добавил в catalog/view/theme/ancart/template/product/category.tpl после <div class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-old"><?php echo $product['price']; ?></span> <span class="price-new"><?php echo $product['special']; ?></span> <?php } ?> <?php if ($product['tax']) { ?> <br /> <span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span> <?php } ?> </div> <?php } ?> <div class="cart"> <input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" /> </div> <div class="wishlist"><a onclick="addToWishList('<?php echo $product['product_id']; ?>');"><?php echo $button_wishlist; ?></a></div> <div class="compare"><a onclick="addToCompare('<?php echo $product['product_id']; ?>');"><?php echo $button_compare; ?></a></div> </div> <?php } ?> Результат: в хедере.А сами категории ни капельки не изменились. Нужен примерно такой вид: Но его я думаю добьюсь сам,главное,чтобы выводились опции товара под самим товаром.Бонусы были бы не лишними.Заранее Спасибо.
  11. Да,нужно расписать что и куда. Я знаю,что работать надо с category.php и category.tpl, а сам вывод опции брать с product.php и product,tpl, пробовал копировать то,что относится к опциям,но все безуспешно.Единственное,что получил так это ошибки в хедере.
  12. Доброго времени суток! Прошу помощи,уже не знаю что делать. В общем нужно сделать так, чтобы опции товара(вес) выводились в категориях и напротив каждой опции была кнопка "Купить",либо,Чтобы цена или вес были кликабельны. Купил https://opencartforum.com/files/file/634-опции-товара-в-категориях-product-options-in-category/ Однако при закачке xml файла куда положено никаких изменений не происходит(делал все по инструкции). Сам Автор уже давно не заходил и,мне кажется, поддержки данного модуля уже не будет.Тема не стандартная - Ancart(ocshop 1.5.6.4). Также находил похожие темы на форуме,все что там описывается - пробовал, но там выходят php ошибки. Надеюсь на Вашу помощь. Спасибо.
×
×
  • Створити...

Important Information

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