Я хотел бы уточнить, как правильно фильтровать вводимые пользователем данные с помощью php. Например, у меня есть веб-форма, в которую пользователь вводит информацию. При отправке данные из формы будут внесены в базу данных.
Насколько я понимаю, вы не хотите дезинфицировать данные, поступающие в базу данных, за исключением экранирования, такого как mysql_escape_string, вы хотите дезинфицировать их при отображении во внешнем интерфейсе с помощью чего-то вроде htmlentities или htmlspecialchars. Однако, если вы хотите, вы можете проверить / отфильтровать ввод пользователя при отправке формы, чтобы убедиться, что данные находятся в правильном формате, например, если поле предназначено для адреса электронной почты, который вы хотите проверить, имеет ли он правильный формат электронной почты. Это правильно?
Мой следующий вопрос: что вы делаете с данными, когда повторно отображаете их в веб-форме? Допустим, пользователю разрешено редактировать информацию в этой форме после того, как он заполнил ее и информация была добавлена в базу данных. Затем они возвращаются и просматривают данные в полях, которые они изначально ввели. Вам нужно очистить данные, чтобы они правильно отображались в полях формы? Например, есть поле «Моя должность», человек вводит «Мой титул» - «Менеджер».Вы видите цитаты вокруг менеджера, когда вы показываете его как есть в поле формы, оно ломается из-за цитат:
<input type="text" name="title" value="My title is "Manager"">
Так разве вам не нужно делать что-то вроде htmlentities, чтобы превратить цитаты в его html-сущности? В противном случае значение поля будет выглядеть так, как будто Мое название
Надеюсь, это имеет смысл.