Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 21.01.2012, 21:00   #1
Руслан Роккер
Пользователь
 
Регистрация: 14.01.2012
Сообщений: 19
Вопрос Как правильно работать с $_POST?

Допустим формой:
Код HTML:
<form action='test.php' method = 'post'>
<input type='text' name='test'>
</form>
значение "ананас"
Вопрос как лучше работать в обработчике:
1. Массивом: $_POST['test']
2. или инициализировать переменную и работать с ней: $test=$_POST['test']
Есть ли какая то разница в работе? Любая... подскажите, порекомендуйте)
пс Думаю вы поняли о чём я хочу сказать)
Если помог... ставь плюсик
Руслан Роккер вне форума Ответить с цитированием
Старый 23.01.2012, 08:11   #2
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,672
По умолчанию

2-ой случай правильнее, т.к. ещё нужна обработка поступивших данных.
Виталий Желтяков вне форума Ответить с цитированием
Старый 26.01.2012, 18:45   #3
ilshat09
Пользователь
 
Регистрация: 10.07.2010
Сообщений: 37
По умолчанию

Вот самый популярный метод работы с POST
if (isset($_POST['itest'])) { $test = $_POST['test']; if ($test == '') { unset($test);} }
ilshat09 вне форума Ответить с цитированием
Старый 26.01.2012, 18:50   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,002
По умолчанию

Цитата:
if (isset($_POST['itest'])) { $test = $_POST['test']; if ($test == '') { unset($test);} }
опечаточка.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 27.01.2012, 09:33   #5
Minus_yu
Чатланин!
Форумчанин
 
Аватар для Minus_yu
 
Регистрация: 20.11.2010
Сообщений: 140
По умолчанию

Цитата:
Сообщение от ilshat09 Посмотреть сообщение
Вот самый популярный метод работы с POST
if (isset($_POST['itest'])) { $test = $_POST['test']; if ($test == '') { unset($test);} }
а вот так короче будет?

PHP код:
if (!empty($_POST['test'])) {$test $_POST['test'];} 
Minus_yu вне форума Ответить с цитированием
Старый 27.01.2012, 09:48   #6
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 3,667
По умолчанию

еще так можно.... если ничего не передавал - то устанавливать принудительно какое то значение
Код:
$test = (isset($_POST["test"])) ? $_POST["test"] : "default";
ADSoft вне форума Ответить с цитированием
Старый 27.01.2012, 11:22   #7
Gorychev
Участник клуба
 
Аватар для Gorychev
 
Регистрация: 08.03.2008
Сообщений: 1,599
По умолчанию

Пару слов о безопасности.

POST чистим от концевых пробелов с помощью trim()
Если включены магические кавычки, удаляем слэши с помощью stripslashes().
Если есть какие-то условия к поступающим данным, делаем валидацию.
Перед сохранением в базу все данные экранируем mysql_real_escape_string()
Gorychev вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PHP функция - отказывается правильно работать S-HaCK XORitY PHP 4 24.09.2011 04:31
как правильно работать с функциями в С++ серг Помощь студентам 2 07.12.2009 23:46
Учимся правильно работать Gromsky WordPress и другие CMS 2 11.09.2009 13:27
Как правильно работать с методом PrintOut? Stilet Microsoft Office Word 6 09.07.2009 08:11
как правильно работать с массивом TStrings Air Общие вопросы Delphi 6 19.12.2007 17:55


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840