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

Как правильно указывать значение запроса к БД в контроллере?


Recommended Posts

Сортировку можно выкинуть, достаточно ORDER BY count_like DESC. Проверку на повторность можно через сессию, можно в local storage писать.

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

Сортировку можно выкинуть, достаточно ORDER BY count_like DESC. Проверку на повторность можно через сессию, можно в local storage писать.

Спасибо, покопаю в этом направлении

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


В catalog/model/catalog/product.php (opencart 2) есть строчка

$this->db->query("UPDATE " . DB_PREFIX . "product SET viewed = (viewed + 1) WHERE product_id = '" . (int)$product_id . "'");

(int)$product_id  ранее не инициирована. Какая ее функция в запросе к базе? я так понял, что $product_id инициируется как целое число, взятое из ячейки product_id

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


А в контроллере не смотрели? Иногда внимательный поиск дает результаты

$this->model_catalog_product->updateViewed($this->request->get['product_id']);
Надіслати
Поділитися на інших сайтах

$product_id = это стока в бд с автоинкрементном, то есть при каждом добавлении нового товара id автоматически увеличиваться  

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

 

А в контроллере не смотрели? Иногда внимательный поиск дает результаты

$this->model_catalog_product->updateViewed($this->request->get['product_id']);

То есть (int)$product_id в модели ставится там, откуда контроллеру нужно взять данные ['product_id']?

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


 

А в контроллере не смотрели? Иногда внимательный поиск дает результаты

$this->model_catalog_product->updateViewed($this->request->get['product_id']);

 

Получается читать надо справа налево. Контроллер извлекает из строки браузера значение ['product_id'] и ищет функцию updateViewed в model_catalog_product, находит там 

 $this->db->query("UPDATE " . DB_PREFIX . "product SET viewed = (viewed + 1) WHERE product_id = '" . (int)$product_id . "'");

далее находит в таблице _product соответствующее значение product_id, и увеличивает значение viewed на 1. Так? :-)

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


Не совсем так. Читайте->по->направлению->стрелочек.

Большинство ответов с примерами есть на php.net. Взялись модуль писать, а в основах плаваете. Сколько времени этой теме, уже б успели учебник по пхп прочитать.

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

Не совсем так. Читайте->по->направлению->стрелочек.

Большинство ответов с примерами есть на php.net. Взялись модуль писать, а в основах плаваете. Сколько времени этой теме, уже б успели учебник по пхп прочитать.

Что верно, то верно :-)  

Спасибо всем, кто отвечает в этой ветке, за потраченное на меня время и внимание :-)

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


Что верно, то верно :-)  

Спасибо всем, кто отвечает в этой ветке, за потраченное на меня время и внимание :-)

Спасибо - это белая стрелочка вверх в нижнем правом углу на фоне зеленого градиента

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

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

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

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

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

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

Вхід

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

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

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

Important Information

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