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

Ошибка токена

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

Добрый вечер! хочу на странице категории у товаров для админа вывести id и ссылку на редактирование соотв. товара.

<?php 
	$user = new User($this->registry);
	if ($user->isLogged()) { ?> 
	<div class="edit">ID #<?php echo $product['product_id']; ?>
			
	[ <a target="_blank" href="/admin/index.php?route=catalog/product/edit&token=<?php echo $this->session->data['token']; ?>&product_id=<?php echo $product['product_id']; ?>" rel="nofollow">Редактировать</a> ]
			
	</div>
	<?php } ?>

вылезает ошибка на "строке с токеном":

PHP Notice:  Undefined property: Loader::$session in /catalog/view/theme/default/template/product/category.tpl on line 105
PHP Notice:  Trying to get property of non-object in /catalog/view/theme/default/template/product/category.tpl on line 105

как сделать, чтобы токен подгружался?

Изменено пользователем nash

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


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

В контроллере 

$data['token'] = $this->session->data['token'];

 

В шаблоне <?= $token; ?>

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


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

Добрый вечер! хочу на странице категории у товаров для админа вывести id и ссылку на редактирование соотв. товара.

<?php 
	$user = new User($this->registry);
	if ($user->isLogged()) { ?> 
	<div class="edit">ID #<?php echo $product['product_id']; ?>
			
	[ <a target="_blank" href="/admin/index.php?route=catalog/product/edit&token=<?php echo $this->session->data['token']; ?>&product_id=<?php echo $product['product_id']; ?>" rel="nofollow">Редактировать</a> ]
			
	</div>
	<?php } ?>

вылезает ошибка на "строке с токеном":

PHP Notice:  Undefined property: Loader::$session in /catalog/view/theme/default/template/product/category.tpl on line 105
PHP Notice:  Trying to get property of non-object in /catalog/view/theme/default/template/product/category.tpl on line 105

как сделать, чтобы токен подгружался?

Начнем с главного ... А почему вы логику используете в шаблонах ?!

Вы считаете что архитектура opencart и MVC не для вас ?

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


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

1. Это неверно делать в шаблоне потмоу и ошибка 2.х - != 1.5

2 Подготовьте ссылку в контроллере

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


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

Вы считаете что архитектура opencart и MVC не для вас ?

Для 50% пользователей OP слово патерны вызывают только не до умения, об MVC я вообще помолчу )  

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


Ссылка на сообщение
Поделиться на другие сайты
А почему вы логику используете в шаблонах ?!

 

Ну.. как бы логикой там не пахнет...

 

Архитектурой, или доступом к данным - да. Нехорошо.

При особом умении можно и к session добраться

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


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

Ну.. как бы логикой там не пахнет...

$user = new User($this->registry);

;)

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


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

Это логика?

Тогда я девочка.

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


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

Это логика?

Тогда я девочка.

Ну тогда так и есть

Создание обьекта с методами  - это уже не логика  "у нас"?

 

Создание объектов логики

Это очень важный шаг! Например, если вы программируете калькулятор, то вы должны создать отдельный объект под названием CalculatorLogic. Этот объект должен делать все что связано с расчетами. ViewController просто передает этому объекту введенную информацию, и CalculatorLogic сообщает контроллеру о новых результатах, а контроллер информирует представление о новой информации к отображению.

Во View идет вывод информации к отображению т е РЕЗУЛЬТАТОВ (не знал что создание обьекта new это результат), а не создание обьектов

Во View можно вызывать методы обьекта (но это тоже уже считается перегрузом), как ускоренная обработка, но не создание обьекта

 

Что то в пятницу "у некоторых" начинается какие то "сморозил не подумавши..."

 

Откройте код user.php и посмотрите что делается при создании обьекта new User

 

"Давайте" в шаблонах вообще начнем вызывать запросы к БД :ugeek:

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

"Давайте" всё в шаблоны "свалим", на фига нам MVC

 

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


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

Ві путаете логику и функционал доступа к данным - увы, я вам здесь ничем помочь не могу..
С логикой у вас очень плохо.

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


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

Ві путаете логику и функционал доступа к данным - увы, я вам здесь ничем помочь не могу..

С логикой у вас очень плохо.

Я ничего не путаю, это вы "сморозили не подумавши" (cетую на пятницу, подустали вы в конец недели)

Далее нет смысла разводить демагогию об очевидном. Создание обьекта - это логика. Если вы создаете обьекты в шаблонах то это ошибка проектирования, которая даже не обсуждается.  Всё, вопрос закрыт. Хотите далее ошибочно проектировать - ваше право.

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


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

Морозитесь Вы, пытаясь оправдаться..

 

Сморозили про логику, а теперь пытаетесь все свернуть на пятницу.

 

 

Хотите далее ошибочно проектировать - ваше право

 

Я где-то сказал, что ТС все правильно сделал? Как вы говорите? Читайте и прозреете.

 

 

Создание обьекта - это логика.

Это доступ к данным.. = функционал

Изменено пользователем chukcha

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


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

 

Я где-то сказал, что ТС все правильно сделал? Как вы говорите? Читайте и прозреете.

chukcha - не перекладывайте с "больной головы на здоровую" (пятница относилась к вам)

Почитайте свои сообщения про "девочку" лучше

Для тех кто в танке: создание обьекта, это логика и она не применима в шаблонах. Всё. Далее ведите демагогию и свои отмазки с собою 

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


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

Больная голова, видимо, у вас.

С логикой у вас проблемы.
Демагогию, размазанную на красивых словах развели вы.

Очевидные вещи выф называете не своими именами.

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


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

M - бизнес логика приложения (в ОП только работа с базой данных)

V - Вывод данных

C - Обработка данных, ака Ваша логика 

 

В опенкарте все как то на оборот или я ошибаюсь ? 

Изменено пользователем ArtenPitov

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


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

M - бизнес логика приложения (в ОП только работа с базой данных)

V - Вывод данных

C - Обработка данных, ака Ваша логика 

 

В опенкарте все как то на оборот или я ошибаюсь ? 

chukcha - сморозил не подумавши явно, да еще так громогласно с "девочкой". Понятное дело что фактами оперировать не может теперь, так перешел на демагогию "нападения" в стиле "сам дурак"

V - вывод информации (результатов, данных) к отображению. О каком создании обьектов В ШАБЛОНАХ там вообще может быть речь, это явная ошибка проектирования :) Здесь даже "обсуждать" нечего

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


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

 

Одна из главных задач логики — определить, как прийти к выводу из предпосылок (правильное рассуждение) и получить истинное знание о предмете размышления, чтобы глубже разобраться в нюансах изучаемого предмета мысли и его соотношениях с другими аспектами рассматриваемого явления.

 

 

Функционал [functional] — переменная величина, заданная на множестве функций, т.е. зависящая от одной или нескольких функций.

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


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

 

...

С точки зрения банальной эрудиции, каждый произвольно выбранный предикативно абсорбирующий объект рациональной мистической индукции можно дискретно детерминировать с аппликацией ситуационной парадигмы коммуникативно- функционального типа при наличии детекторно-архаического дистрибутивного образа в Гилбертовом конвергенционном пространстве, однако при параллельном колаборационном анализе спектрографических множеств, изоморфно релятивных к мультиполосным гиперболическим параболоидам, интерпретирующим антропоцентрический многочлен Нео-Лагранжа, возникает позиционный сигнификатизм вентильной теории психоанализа, в результате чего надо принять во внимание следующее: поскольку не только эзотерический, но и экзистенциальный апперцепционированный энтрополог антецедентно пассивизированный высокоматериальной субстанцией, обладает призматической идиосинхрацией, но так как валентностный фактор отрицателен, то и, соответственно, антагонистический дискредитизм деградирует в эксгибиционном направлении, поскольку, находясь в препубертатном состоянии, практически каждый субъект, меланхолически осознавая эмбриональную клаустрофобию, может экстраполировать любой процесс интеграции и дифференциации в обоих направлениях, отсюда следует, что в результате синхронизации, ограниченной минимально допустимой интерполяцией образа, все методы конвергенционной концепции требуют практически традиционных трансформаций неоколониализма.

 

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


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

Э.. куда вас занесло..

 

Демагогия (др.-греч. δημαγωγία «руководство народом; заискивание у народа») — набор ораторских и полемических приёмов и средств, позволяющих ввести аудиторию в заблуждение и склонить её на свою сторону.

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


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

Это логика?

Тогда я девочка.

 

Демагогия (др.-греч. δημαγωγία «руководство народом; заискивание у народа») — набор ораторских и полемических приёмов и средств, позволяющих ввести аудиторию в заблуждение и склонить её на свою сторону.

 

Одна из главных задач логики — определить, как прийти к выводу из предпосылок (правильное рассуждение) и получить истинное знание о предмете размышления, чтобы глубже разобраться в нюансах изучаемого предмета мысли и его соотношениях с другими аспектами рассматриваемого явления.

 

 

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

 

Вопрос: вы считаете что создание объектов в шаблонах  это не ошибка проектирования?

Только четкий ответ а не ересь демагогии

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


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

Марк!, вы читать умеете?

 

Где я сказал, что ТС привел верное решение?

Я обратил внимание, что функционально неверно!!!

Вы же настаиваете на логике.

 

Я вам привожу общепринятые определения слов логика и функционал - вы же, делаю вывод, - не читаете.

 

Исходя из ваших посылов, то в шаблонах, вообще не должно быть условных операторов - ведь это логика!!!
 

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


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

Вообще тут нужно разобраться о какой логике идет речь.

С точки зрения "философии" она может быть везде 

 

М - бизнес логика 

V - логика вывода данных (if, switch)

C - логика обработки данных 

 

Так что тут можно долго холиварить, а холивар как известно признак глупа (не хочу никого обидеть)

 

По поводу 

$user = new User($this->registry);

Я бы скорее это отнес к С, но это не логика.

Так как это манипуляция с объектом, оно же создания объекта, сама логика находиться внутри объекта и на выходе мы получаем банально набор данных, но не как не логику (я о бизнес логике)

 

Могу быть не прав, поправляйте, как говориться в спорах рождается истина!

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


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

Марк!, вы читать умеете?

...

 

Вам сказали что строка new User это вызов логики в шаблонах, что является нарушением паттернов проектирования MVC

Вам дали четкое понятие логики (под спойлером) в паттерне MVC из учебника, что создание обьекта, да, это логика расчета уже

А в шаблонах выводится результат отображения только, но никак не логика new User

Создание объектов логики

Это очень важный шаг! Например, если вы программируете калькулятор, то вы должны создать отдельный объект под названием CalculatorLogic. Этот объект должен делать все что связано с расчетами. ViewController просто передает этому объекту введенную информацию, и CalculatorLogic сообщает контроллеру о новых результатах, а контроллер информирует представление о новой информации к отображению.

Что не понятного? Читать видимо вы не умеете

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


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

M - бизнес логика приложения (в ОП только работа с базой данных)

V - Вывод данных

C - Обработка данных, ака Ваша логика 

 

В опенкарте все как то на оборот или я ошибаюсь ? 

 

в ос

M - доступ к данным

V - отображение данных (с логикой вывода - условия которые определяют поведение объекта)

С - Обработка данных полученных из M и подготовка для V

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


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

в ос

M - доступ к данным

V - отображение данных (с логикой вывода - условия которые определяют поведение объекта)

С - Обработка данных полученных из M и подготовка для V

Это я знаю)

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


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

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

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

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

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

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

Войти

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

Войти

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

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

×

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

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