Сообщение от Dan922
|
я чет не совсем понимаю, так ведь приходят целые числа, нет?
|
Нет, все что в значениях полей формы, это строки, строковые представления, и сервер получается строки. А все что присылают серверу может быть "подделкой". Ссылку на документацию РНР я дал, скачивайте. Там есть раздел о безопасности, в котором есть и о безопасности баз данных.
Если вы не проверив, что прислал клиент, подставите его данные в запрос, то вашу базу могу и взломать, так как вы ожидали что там 5, а к ней еще добавят запрос.
Сообщение от Dan922
|
Дайте пример вот на это
|
В самом простом случае, это привести к типу integer, так как знаем, что получаем идентификаторы:
if($id = (int)имя_переменной) {
теперь $id можно подставлять в запрос так как это число и не равно 0
}
Ищите в руководстве раздел работы с переменными, где описана и функция проверки переменной является ли она числом или строкой, содержащей число -
is_numeric. Также в РНР достаточный
набор фильтров для проверки данных. Я вам не могу написать примеров хотя бы потому, что вы их вставите в свое, а в итоге не получится. Примеры использования той или иной РНР функции смотрите в разделе ее описания, есть там и примеры.
Все потому, что нужно не просто проверять число/не число, но еще и отдавать клиенту сообщения об ошибках, то есть прием формы от клиента, это есть диалог клиент -> сервер -> клиент. Вы что хотите чтобы я вам полный скрипт всего и вся написал? Я не буду. Ищите здесь, в сети подобные вопросы, скрипты, изучайте и применяйте у себя познанное.
Это не раздел РНР, серверным скриптам на этом форуме посвящен другой раздел и писать тут много о проблемах на сервере не стоит. В данном разделе можно было бы вести диалог о клиентской части вашего кода. А она никуда не годится - много лишнего.