Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2012, 22: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, 09:11   #2
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

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

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

Цитата:
if (isset($_POST['itest'])) { $test = $_POST['test']; if ($test == '') { unset($test);} }
опечаточка.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 27.01.2012, 10: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, 10:48   #6
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

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

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

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


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


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