Веб программирование

Быстрая проверка полей, на примере с E-Mail

 
 

Большой привет уважаемым читателям.  Хочу предложить небольшой способ обработки $_POST

Сразу сообщаю, что код не тестировался и выкладывается для ознакомления.

Как видно код мало функционален, но это способ для тех кто обрабатывает поля по старинке. методом “Попова” :(

<?php
$post = array(); //Объявляем переменную post - массив
foreach($_POST as $key => $value) { //Получаем ключи и значения $_POST
If($key == 'email') //Если поле E-Mail проверяем
{
//Вместо этого код проверки почты на правильность
$post['email'] = $post['email'];
}
else //Если не мыло экранизируем символы
{
$post[$key] = stripslashes($value);
}
}
print_r($post); //Результат

Есть вопросы? Спроси на нашем форуме!!
Coolhacker770 [06.02.2013 12:44]

Ну, во-первых, это не быстрая проверка полей, а регексы (регулярные выражения).

Во-вторых, не стоит выкладывать потому как нефиг забивать голову новичкам, лучше напишите гайд по регексом, этого все равно кроме более-менее опытных товарищей никто не поймет.

В-третьих спам-фильтр сайта потер половину метасимволов скорее всего, а посему регекс отработает йух знает как.

Ну а говносоветы говнокодера попова вообще использовать не надо, чревато последствиями :)

Coolhacker770 [06.02.2013 12:44]

*гайд по регексам

admin1310 [06.02.2013 13:28]

Код удобен для обработки пост запросов, и последующей записи в базу данных.
Особенно если запись идет через mysql_query.
А то что фильтр сайта подтер половину не хорошо, скорее всего регулярка не отработает

admin1310 [07.02.2013 19:47]

Автор, скинь в комментарии исправленное регулярное выражение.
Оно зафильтровалось ((

Jallvar30 [08.02.2013 12:40]

Смотрю моя статья была полезна.
Проверку e-mail'a я дал для примера.
Вот. Вырезал из codeigniter'a -> библиотек -> formvalidation
public function valid
email($str)
{
return ( ! pregmatch("/^([a-z0-9+-]+)(.[a-z0-9+_-]+)*@([a-z0-9-]+.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE;
}



Оставлять комментарии можно только зарегистрированным




Предупреждение: Вся информация представлена исключительно в образовательных целях.
Ни авторы, ни администрация не несут ответственности в случае ее использования в противозаконных целях.