Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

Как программа PHP обрабатывает методы данных GET и POST

PHP обнаруживает оба метода GET и POST , исходящие из HTML формы. Одна важная деталь, для понимания - это то что метод, POST всегда обрабатывается раньше, если присутствуют оба из них. Если переменная PHP определяется методом POST, или если переменная определена дэймоном HTTP в среде окружения Unix, то метод GET не может перезаписать ее. Это должно предотвратить ситуацию когда кто-либо добавит строку ?REMOTE_HOST=some.bogus.host к его URL и таким образом, подчунуть механизму регистрации PHP, эти альтернативные данные. Однако POST методу, разрешено перезаписывать эти переменные.

Любая компонента данных GET (данные после '?' в URL) которая имеет форму, word=something, определит переменную $word, содержащую значение something. Даже если данные не определены в этой форме, к ним все равно можно обратиться через массив $argv. Например, в URL подобно:

/cgi-bin/php.cgi/file.html?abc+def+EMAIL_ADDR=rasmus@vex.net&var==value

Соответствующие компоненты таблицы идентификаторов PHP будут:

$argc       = 4
$argv[0]    = abc
$argv[1]    = def
$argv[2]    = EMAIL_ADDR=rasmus@vex.net&var==value $EMAIL_ADDR = rasmus@vex.net
$var        = value

Обратите внимание, как EMAIL_ADDR часть данных присутствует и в переменной $argv [2], в которой она не анализируется, и создается переменная $EMAIL_ADDR, содержащая значение rasmus@vex.net.

$EMAIL_ADDR переменная использовалась в вышеупомянутом примере, потому что это - полезная переменная, если Вы используете особенности регистрации PHP. Добавляя:

?EMAIL_ADDR=

К любым линкам на странице, где известен email адрес пользователя, Вы можете передавать это значение следующей странице. Система регистрации PHP, будет автоматически просматривать значение этой переменной и записывать его в качестве адреса электронной почты пользователя в файлах регистрации. Для любых пользователей PHP, вышеупомянутое выполняет ту же самую функцию что и добавление ?<!--$email--> к используемому URL. Это выглядит немного сложным сейчас, но сложным является и решение самому сформировать свою собственную страницу.

В вышеприведенном примере Вы также видели, как несколько переменных в методе GET могут быть правильно определены, отделением их друг от друга символом "&". Этот список переменных, разделенный символом "&" должен быть последней (или единственной) компонентой метода GET.

SELECT MULTIPLE и PHP

Тэг SELECT MULTIPLE в конструкции HTML позволяет пользователям сделать множественный выбор из списка. Выбранные объекты впоследствии передаются обработчику формы. Проблема состоит в том, что все они будут переданы с одним и тем же именем объекта. То есть.

<SELECT NAME="var" MULTIPLE>

Каждая выбранная опция будет передана обработчику формы в виде:

var=option1
var=option2
var=option3

Каждая опция затрет предыдущее содержимое переменной $var. Решение состоит в том, чтобы использовать особенность PHP/FI - не-индексированные массивы. Так нужно использовать:

<SELECT NAME="var[]" MULTIPLE>

Это сообщает PHP/FI, чтобы он обработывал переменную var как массив, каждое присвоение значения переменной var[] добавляет элемент к массиву. Первый элемент становится $var[0], следующий $var[1], и т.д. Для опеределения количества выбранных элементов может использоваться функция count(), и в случае необходимости функция sort() для сортировки массива.


IMAGE SUBMIT и PHP

При передаче формы на рассмотрение, можно использовать картинку, вместо стандартного представления кнопки. Это можно сделать, указав тэг:

<input type=image src=image.gif name=sub>

Когда пользователь нажимает где-нибудь на изображение, сопровождающая форма будет передана серверу с двумя дополнительными переменными, sub_x и sub_y. Они содержат координаты точки внутри изображения, на которой пользователь щелкнул мышью. Опытный может обратить внимание, что фактические имена переменных , посланных броузером содержат точку вместо подчеркивания, но PHP автоматически преобразовывает точку в подчеркивание.

[Назад] [Содержание] [Вперед]

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...