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

Как записать условие в контролер


Recommended Posts

Здравствуйте.

ОК стор 2.3

У меня в тпл есть такая штука

<?php } elseif ($total['text'] - $this->config->get('min_price_order') > 0) { ?>

В php это вот так

if ($total - $this->config->get('config_min_price_order') > 0) {
                 $this->_templateData['enable_s_p'] = true;
            } else {
                 $this->_templateData['enable_s_p'] = false;
            }

Оно все работает. Это просто пример.

 

Я не понимаю, как сделать, чтобы работало вот это:

тпл

<div>До Опта <?php echo $this->config->get('min_price_order') - $total['text']; ?></div>

Мне нужно, чтобы подставлялась цифра (в 1.5.6) все работало, а как тут...

Подскажите, люди добрые, как это в контролере описать?

Спасибо. 

 

Надіслати
Поділитися на інших сайтах


$this->_templateData['enable_s_p'] = true;
$data['enable_s_p'] = true;
Надіслати
Поділитися на інших сайтах

3 минуты назад, ArtemPitov сказал:

$this->_templateData['enable_s_p'] = true;

$data['enable_s_p'] = true;

Сделал вот так

if ($total - $this->config->get('min_price_order') - $total['text']) {
                 $this->_templateData['enable_p'] = true;
            } else {
                 $this->_templateData['enable_p'] = true;
            }

Оно не работает и я совсем не понимаю, как оно работает. Подправьте, пожалуйста.

Надіслати
Поділитися на інших сайтах


2 минуты назад, auditor сказал:

<div>До Опта <?php $price_main = $this->config->get('min_price_order') - $total['text']; echo $price_main; ?></div>

 

Fatal error: Call to a member function get() on null in 

В 2.3 в шаблоне это все совсем не работает. Его как то нужно записать в контролер. 

Надіслати
Поділитися на інших сайтах


Написал в шаблон так 

<?php echo 1000 - $total['text']; ?>

Оно то работает, но нафига тогда я с min_price_order игрался, в админку добавлял, хотел чтобы удобно было порог опта менять...

Надіслати
Поділитися на інших сайтах


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

в контроллере напиши:


$data['price_main'] = $this->config->get('min_price_order');

а в TPL:


<div>До Опта <?php $price_opt = $price_main - $total['text']; echo $price_opt; ?></div>

 

Чувствую себя идиотом, ну и ладно:grin:

Это у меня в ТПЛ

<?php foreach ($totals as $total) { ?>
				<?php if ($enable_s_p) { ?>
				<div style="float: right; font-size: 20px; color: red; padding: 10px 0;">Экономия <?php echo $total['text'] - $total['text_2']; ?></div>
				<?php } else { ?>
				<div style="float: right; font-size: 20px; color: red; padding: 10px 0;">До Опта <?php $price_opt = $price_main - $total['text_2']; echo $price_opt; ?></div>
				<?php } ?>
				<?php } ?>

Это в контроллере

if ($total - $this->config->get('config_min_price_order') > 0) {
                 $this->_templateData['enable_s_p'] = true;
            } else {
                 $this->_templateData['enable_s_p'] = false;
            }
			$data['price_main'] = $this->config->get('config_min_price_order');

Первая часть и ТПЛ срабатывает нормально.

Когда включается вторая часть, то пишет: До Опта -121.03 и $total['text_2'] равен 121.03 (без минуса). 'config_min_price_order' = 150. Должно быть 150-121,03

P.S. сори за путаницу, в этом посте все переменные правильные.Мой косяк, но я все Ваши предложения правил.

Змінено користувачем yurabr
Надіслати
Поділитися на інших сайтах


Большое спасибо  @auditor. Зашел, увидел, сделал. Наблюдать по TeamViever было прикольно, хотя он справился уж очень быстро (я и испугаться не успел).

Напишу, что к чему, для будущих поколений.

На сайте две цены, забиты в скидки price и price_2. Обе выведены на сайте и в зависимости от сумы, клиент покупает по рознице или опту. 

В корзине, симпле ит.д. нужен был пересчет тоталов (чтобы сделать: доберите до опта или вы экономите №-ную сумму), а в 2.3 с этим для меня проблема.

Выложу коды, а что к чему, кому нужно поймет или догадается :wink:

TPL

<?php foreach ($totals as $total) { ?>
				<?php if ($enable_s_p) { ?>
				<div style="float: right; font-size: 20px; color: red; padding: 10px 0;">Экономия <?php echo $total['text'] - $total['text_2']; ?></div>
				<?php } else { ?>
				<div style="float: right; font-size: 20px; color: red; padding: 10px 0;">До Кр.опта <?php $price_opt = $price_main - $total['text_2']; echo $price_opt; ?></div>
				<?php } ?>
				<?php } ?>

Controller

if ($total - $this->config->get('config_min_price_order') > 0) {
                 $this->_templateData['enable_s_p'] = true;
            } else {
                 $this->_templateData['enable_s_p'] = false;
            }
			
			$this->_templateData['price_main'] = $this->config->get('config_min_price_order');

config_min_price_order забивается в админке.

Теперь все считает, все работает.

Еще раз спасибо @auditor

 

  • +1 1
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

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