Php id что это?
php 8, адрес страницы с id=15, наверно это номер товара, но переменной нигде не объявлял и поискал по файлу,подскажите откуда он бе рется.
Пока нет лидеров с лучшими ответами.
Ваш вопрос
php 8, адрес страницы с id=15, наверно это номер товара, но переменной нигде не объявлял и поискал по файлу,подскажите откуда он бе рется.
В адресе ?id=15 слово id — имя параметра запроса, которое выбрал автор приложения. Оно не является специальной командой PHP и не создаёт автоматически переменную $id. Данные такого параметра доступны через $_GET['id'], если он передан. В конкретном проекте этим числом могут обозначать товар, пользователя или другую запись. Перед использованием нужно проверить наличие и формат значения, а не сразу склеивать его с запросом к базе. Для числового идентификатора подходит проверка целого числа с допустимым диапазоном. После неё приложение ещё должно проверить существование записи и право текущего пользователя на доступ. Само знание чужого id не даёт разрешения читать или изменять чужие данные.
| Где встретилось id | Что это означает | Что проверить |
|---|---|---|
Адрес ?id=15 | Параметр запроса с именем, выбранным автором сайта | Приложение должно прочитать и проверить значение, прежде чем использовать его |
$_GET['id'] | Доступ к данным параметра в PHP | Параметр может отсутствовать или иметь неподходящую форму, поэтому прямое доверие ему ошибочно |
$id | Обычная переменная программы | Найдите присваивание или аргумент функции; адрес сам по себе её не объявляет |
| Поле id в базе | Идентификатор записи по правилам схемы | Это может быть число, строка или другой тип, определённый приложением |
| HTML-атрибут id | Идентификатор элемента документа в браузере | Он относится к структуре страницы и не равен автоматически номеру записи базы |
В вашем примере наиболее вероятен выбор товара по параметру. Проследите обработчик страницы: откуда он получает значение, какую проверку делает и к какой таблице обращается. Название параметра не позволяет заранее установить его назначение для любого сайта.
Если проект ожидает положительное целое число, нужна соответствующая проверка типа и диапазона. Простое приведение к числу способно замаскировать ошибочный ввод, поэтому проверка и преобразование не являются одним действием. Для запросов к базе значения передают параметрами, а не включают в SQL произвольной склейкой.
После проверки числа остаются вопросы существования товара и разрешения на действие. Например, публичную карточку может видеть любой посетитель, а изменение цены доступно только уполномоченному пользователю. Знание номера записи не заменяет проверку таких прав.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Лучший ответ
4.1 Fast
4.1 Fast
Php id что это?
$_GET['id']или получение параметров через фреймворк.idпридумано приложением; автоматической переменной$idтолько из адреса не появляется.