Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Вывести баллы справа от опций во фронтенде


walkietalkie
 Поделиться

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

Доброго времени суток!

 

Друзья, подскажите, пожалуйста, с таким моментом. Переделал поле Баллы в опциях под хранение текстовой информации. Теперь текст, .хранящийся в этом поле, нужно вывести на сайт справа от опции. Я пробовал два варианта:

<?php if ($option_value['points']) { ?>
	(<?php echo $option_value['points']; ?>)
<?php } ?>

 и такой:

<?php if ($points) { ?>
	<li><?php echo $text_points; ?> <?php echo $points; ?></li>
<?php } ?>

Первый вариант дал ошибку Undefined index in... Второй - вообще ничего. Ни ошибок, ни текста не видно. На всякий случай уточню, что использую vQmod; первая ошибка ссылалась как раз на файл из его кэша. Кэш чистил, модификаторы обновлял, но ничего не изменилось.

 

Жду ваших советов, спасибо заранее

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


а в контроллере?

$product_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'                   => $option_value['image'] ? $this->model_tool_image->resize($option_value['image'], 50, 50) : '',
	'price'                   => $price,
	'price_prefix'            => $option_value['price_prefix'],
	'points'                  => $option_value['points'],
	'points_prefix'           => $option_value['points_prefix']
);

 

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

1 час назад, fanatic сказал:

а в контроллере?


$product_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'                   => $option_value['image'] ? $this->model_tool_image->resize($option_value['image'], 50, 50) : '',
	'price'                   => $price,
	'price_prefix'            => $option_value['price_prefix'],
	'points'                  => $option_value['points'],
	'points_prefix'           => $option_value['points_prefix']
);

 

За это совсем не подумал. Спасибо! Попробую и отпишусь

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


3 часа назад, walkietalkie сказал:

та же самая ошибка ссылается на файл product.php

 

4 часа назад, walkietalkie сказал:

За это совсем не подумал.

а теперь, подумайте о модели  catalog/model/catalog/product.php   метод  getProductOption

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

57 минут назад, fanatic сказал:

 

а теперь, подумайте о модели  catalog/model/catalog/product.php   метод  getProductOption

Я открывал модель, но не разобрался, куда там копать. Так что сделал иначе. Возможно, сложнее, но лично мне так разобраться было проще

Во вьюшке в product.php добавил php-код, который подключается к базе данных, и в этом коде сформировал SQL-запрос

<?php
	$host = "localhost";
	$user = "user";
	$password = "password";
	$mysqli = new mysqli($host, $user, $password, $user);
	$povi = $option_value['product_option_value_id'];
	$q = $mysqli->query("SELECT `points` FROM `oc_product_option_value` WHERE `product_option_value_id`=$povi");
	while($row = mysqli_fetch_row($q)){
		echo '<span>Размер: ', "$row[0]", '</span>';
	}
?>

Понимаю, решение не самое изящное и верное в случае MVC-модели, но, тем не менее, рабочее.

В любом случае, вам спасибо за то, что отозвались на мой зов :)

Изменено пользователем walkietalkie
Ссылка на комментарий
Поделиться на других сайтах


10 минут назад, walkietalkie сказал:

Я открывал модель, но не разобрался, куда там копать.

public function getProductOptions($product_id) {
	$product_option_data = array();

	$product_option_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_option po LEFT JOIN `" . DB_PREFIX . "option` o ON (po.option_id = o.option_id) LEFT JOIN " . DB_PREFIX . "option_description od ON (o.option_id = od.option_id) WHERE po.product_id = '" . (int) $product_id . "' AND od.language_id = '" . (int) $this->config->get('config_language_id') . "' ORDER BY o.sort_order");

	foreach ($product_option_query->rows as $product_option) {
	    $product_option_value_data = array();

	    $product_option_value_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_option_value pov LEFT JOIN " . DB_PREFIX . "option_value ov ON (pov.option_value_id = ov.option_value_id) LEFT JOIN " . DB_PREFIX . "option_value_description ovd ON (ov.option_value_id = ovd.option_value_id) WHERE pov.product_id = '" . (int) $product_id . "' AND pov.product_option_id = '" . (int) $product_option['product_option_id'] . "' AND ovd.language_id = '" . (int) $this->config->get('config_language_id') . "' ORDER BY ov.sort_order");

	    foreach ($product_option_value_query->rows as $product_option_value) {
		$product_option_value_data[] = array(
		    'product_option_value_id' => $product_option_value['product_option_value_id'],
		    'option_value_id' => $product_option_value['option_value_id'],
		    'name' => $product_option_value['name'],
		    'image' => $product_option_value['image'],
		    'quantity' => $product_option_value['quantity'],
		    'subtract' => $product_option_value['subtract'],
		    'price' => $product_option_value['price'],
		    'price_prefix' => $product_option_value['price_prefix'],
		    'weight' => $product_option_value['weight'],
		    'weight_prefix' => $product_option_value['weight_prefix']
// тута добавить
		);
	    }

 

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

14 минут назад, walkietalkie сказал:

Во вьюшке в product.php

 

18 минут назад, walkietalkie сказал:

решение не самое изящное и верное в случае MVC-модели

совсем не верное.  и не только в mvc, а в принципе

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

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...

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

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