Имеется каталог кошек, который выводится на страницу каталога при помощи mysqli + php. Как реализовать карточку товара, чтобы при клике на определенный товар, пользователь попадал на отдельную страницу, на которой будет информация об этом товаре. Понимаю, что нужно делать это при помощи id товара, но как именно реализовать - не совсем понимаю. Годного материала не могу найти. Спасибо.
-
1Возможный дубликат вопроса: Книги и учебные ресурсы по PHP – Алексей Шиманский May 16 '22 at 14:44
-
Начните с чтения книг – Алексей Шиманский May 16 '22 at 14:44
1 Answers
На этот вопрос Вы не найдете простого ответа. Но я постараюсь в вкратце объяснить суть подхода к решению этой задачи.
Речь идет о необходимости знать, какой именно товар запрашивается в данный момент. Эти данные можно получать разным способом, но зачастую их берут из глобального массива $_GET, который наполняется автоматически исходя из содержимого строки URL.
К примеру, URL может быть таким: вашДомен.ру/page.php?itemId=XXX
page.php - файл обработчик запросов вывода полной страницы, его необходимо создать в главной директории севера. Где XXX - идентификатор товара. Собственно получить доступ к этому идентификатору можно так:
$_GET['itemId'];
Главный вопрос в том, как идентификатор будет попадать в эту строку. Как правило, ссылку на просмотр полной страницы товара формируют при выводе всех товаров одной категории или к примеру на главной странице в разделе "Недавно добавленные товары". Именно при формировании шаблона отображения этих пунктов и должна быть сформирована ссылку на страницу, которая будет смотреть, указан ли GET параметр item, заполнен ли он вообще. Если да - создаем запрос в базу данных примерно таким образом:
$itemId = (int) $_GET['itemId']; // тут пройдут только цифры
$SQL = 'SELECT * FROM table_name WHERE id="{$itemId}"';
Собственно вместо table_name нужно указать имя твой таблицы, в которой у Вас хранятся товары. В моем случае, у каждого товара есть поле id, по которому выберем нужный товар.
Если ничего из Выше упомянутого не натолкнуло Вас на мысль о том, как реализовать решение Вашей задачи, советую поискать информацию по этим ключевым словам: "Реализация простого роутинга на PHP".
Без ООП как я понимаю.