Перейти к содержанию
LiS

Вывод корзины только для товаров в наличии

Рекомендуемые сообщения

Необходимо сделать так, что бы в корзину можно было добавить только товар в наличии, а в остальных вместо нее выводилась надпись "Нет в наличии".

Есть тема simplecart-black-fluid параметр $stock, который выводит надпись "В наличии" или "Нет в наличии", но при этом корзина выводится в обоих случаях. А как сделать что бы она выводилась, только для тех товаров, которые есть в наличии?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я пытался сделать это через проверку количества товара, но что-то не получается.

Я создал в catalog\model\catalog\product.php запрос кол-ва товара на складе

public function getCount($product_id){
		$count = $this->db->query("SELECT `oc_product`.`quantity`FROM '" . DB_PREFIX . "product' WHERE product_id = " . (int)$product_id)
		return $count->row;
	}
Только он выдает ошибку в строке return $count->row;

В файле catalog\controller\product\product.php проверяю условие

if(getCount($product_id)=0)
				$this->data['status']=FALSE
			else
				$this->data['status']=TRUE

Только я не знаю как это лучше использовать в шаблоне catalog\view\theme\simplecart-black-fluid\template\product\product.php

Подскажите в чем проблема... Опыта работы с php маловато..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Точки с запятой, пробелы расставь.

И как ты вызываеш метод getCount()?

Выложи оба файла - исправлю синтаксис...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Точки с запятой, пробелы расставь.

И как ты вызываеш метод getCount()?

Выложи оба файла - исправлю синтаксис...

catalog\controller\product (измененный код строка 111)

product.php

catalog\model\catalog (измененный код строка 9 функция закоментирована - отлаживал другой кусок)

product.php

Огромное спасибо!!!

А можешь подсказать как лучше в шаблоне это вставить. Не получается эту конструкцию в if-else упаковать корректно:

<?php echo $text_qty; ?>
      <input type="text" name="quantity" size="3" value="<?php echo $minimum; ?>" />
      <a onclick="$('#product').submit();" id="add_to_cart" class="button"><span><?php echo $button_add_to_cart; ?></span></a>
      <?php if ($minimum > 1) { ?><br/><small><?php echo $text_minimum; ?></small><?php } ?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А можешь подсказать как лучше в шаблоне это вставить. Не получается эту конструкцию в if-else упаковать корректно:

Ну вот... дай палец и руку отхватят.

Я говорил что поправлю синтаксис... потому что сам алгоритм решения задачи - кошмар.

В catalog\controller\product\product.php уже всё есть. Вот строка которая получает информацию о товаре:

$product_info = $this->model_catalog_product->getProduct($product_id);
среди прочего там есть и количество, на основании этого количества и формируется $stock

Бери $product_info['quantity'] и обрабатывай как тебе надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну вот... дай палец и руку отхватят.

Ну уж прям сразу руку)))

Я вам дико благодарен...

А с условием я уже разобрался... Правда после С\С++\С# подобные конструкции воспринимаются не совсем адекватно))

<?php 
				if((int)$product_info['quantity']==0)
				echo $stock;
				else
				{
				echo $text_qty; ?>
                <input type="text" name="quantity" size="3" value="<?php echo $minimum; ?>" />
                <a onclick="$('#product').submit();" id="add_to_cart" class="button"><span><?php echo $button_add_to_cart; ?></span></a>
                <?php if ($minimum > 1) { ?><br/><small><?php echo $text_minimum; ?></small><?php } ?>
              </div>
              <div>
                <input type="hidden" name="product_id" value="<?php echo $product_id; ?>" />
                <input type="hidden" name="redirect" value="<?php echo str_replace('&', '&', $redirect); ?>" />                
              </div>
            </form>
            <?php } ?>
         <?php } ?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.