![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| xarakiry |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 28.5.2008 Репутация: -1 Всего: -1 |
Народ, есть форма и око 30 переменных из неё, которые передаются постом. Хотелось знать, можно ли сделать быструю обработку на трим и хтмлспешиалчарс . А то отдельно для каждой делать, с ума можно сойти...
--------------------
Все университеты Азербайджана на students.az |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
пиши функцию, к примеру такую:
|
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
xarakiry, можно. http://php.net/foreach
|
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
||||
|
||||
| xarakiry |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 28.5.2008 Репутация: -1 Всего: -1 |
Смысле ..как это перед выводом ? Эти переменные идут в запрос Mysql ...перед ним и надо обработать...
--------------------
Все университеты Азербайджана на students.az |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
с чего ты взял?
При чем здесь Mysql? Функция называется htmlspecialchars, а не mysqlspecialchars Мускулю она глубоко до лампочки. |
|||
|
||||
| Sannis |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 14.8.2007 Где: Москва Репутация: 6 Всего: 13 |
Перед записью в БД нужно экранировать некоторые символы специальной функцией, типа mysql_real_escape_string().
А когда делать хтмлспешиалчарс (), который не связан с БД, а делается для отключения HTML в основном, имхо, вы можете и сами решить. Есть и те, кто делает до и ничего. Добавлено через 17 секунд Не хочу вспоминать про этот холивар снова -------------------- |
|||
|
||||
| xarakiry |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 28.5.2008 Репутация: -1 Всего: -1 |
Ребята..давайте по порядку...данные получены из формы и заполняются в базу данных, но перед этим их и надо проверить... и там не тока HtmlSpecialChars ещё и трим нужен... что то я не могу конкретизировать ваши ответы... Или вы посоветуете что то другое для проверки этих данных ? Буду очень благодарен.
--------------------
Все университеты Азербайджана на students.az |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
Конкретизировать ответы очень просто.
Делать всегда надо только то, что требуется. Для этого надо понимать, что ты делаешь. А чаще всего, проблема именно в этом. Во-первых, не называй свои действия словом "проверка". Проверка - это когда ты проверяешь данные, и если что-то в них не так, в базу не записываешь. А то, чем ты занимаешься, называется форматированием. Во-вторых, если я в первый раз неписал неконкретно, то напишу ещё раз - функция htmlspecialchars к базе данных отношения не имеет. То есть, перед помещением в базу её применять не обязательно. Можно, но не обязательно. А вот перед выводом данных в браузер - обязательно. Но если ты уже раньше это делал перед помещением в базу, то уже не надо. В-третьих, если тебе слова Sannis показались неконкретными, я могу повторить. Для того, чтобы не было ошибок при помещении данных в базу, их надо обработать функцией mysql_real_escape_string(). Не "проверить", а обработать. Обязательно. Не все, правда, и не всегда, но это уже будет слишком сложно. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
конкретизировать надо вопросы. тебе надо ответ на вопрос, как обработать ВСЕ входящие переменные? тебе уже ответили: foreach позволяет проходится по произвольному массиву. А $_GET и $_POST - тоже массивы. Или у тебя вопрос: как проверить входящие данные? если тебе известно, какого формата данные должны быть(число, дата и т.д.) - то и проверяй так(is_numeric, is_int и любый самодельные функции). trim, htmlspecialchars надо делать перед выводом, а в БД хранить неизменные. для вставки данных в БД без проблем используется функция mysql_real_escape_string |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |