Forum Webscript.Ru
Программирование => PHP => Тема начата: Evgeny от 24 Июня 2002, 14:14:17
-
Привет всем.
Начал писать свой первый php-скрипт, и возник такой вопрос. Как получить значения CGI-переменных, переданных в скрипт.
Большое спасибо.
-
Эти переменные называются не CGI. CGI вообще к РНР имеет очень маленькое отношение.
Эти переменные находятся в массивах, которые называются
$HTTP_метод передачи данных_VARS
метод бывает POST или GET
то есть, если ты в форме указывал
-
Понятно, спасибо.
А как перебрать все ключи и значения массива $HTTP_POST_VARS?
-
http://www.php.net/each
http://www.php.net/extract
-
В описании формы, если указать enctype="text/plain", (метод - POST), то массив $HTTP_POST_VARS пуст. Почему?
-
не знаю.
а если enctype не указывать?
-
не знаю.
а если enctype не указывать?
Если не указывать, то всё в порядке, работает.
Работает также, если enctype указать и метод GET использовать.
И ещё вопрос. Как узнать, существует ли элемент массива с данным ключом.
В Перле это было бы например:
if (exists $arr{\'key1\'})
{ ...
}
И как можно узнать, является ли пустым значение массива, ассоциированное с данным ключём.
Опять же пример из перла (в нём я немного сильнее :))
if ($arr{\'key1\'})
{ ...
}
-
http://www.php.net/isset
http://www.php.net/empty
индекс массива берется в квадраиеых скобках
if (isset($arr[\'key\']))
а с enctype я так думаю, такое дело.
такого типа - текст/плайн - не существует, и поэтому вместо $HTTP_POST_VARS берется что-то вроде $RAW_HTTP_HEADERS - точно название не помню.
Ну, а гету енктайп вообще по барабану.
-
Да, обойдусь без энктайпа,
спасибо за помощь.