Передача переменных в PHP. Методы GET и POST. Родственные связи: Муж, Жена, Тесть, Тёща, Свёкор, Свекровь, Деверь, Шурин, Золовка, Свояк, Свояченица, Зять, Невестка, Сноха Передача переменных при помощи метода GET


Одна из самых важных и популярных задач в PHP - передача данных. Вы, наверное, не раз сталкивались с url вроде site.ru/page.php?id=114841 или формой с полями ввода текста (регистрация, новый комментарий и тд). В этом и следующем уроках поговорим об передаче данных в PHP .

Метод POST в PHP

Метод состоит из двух частей: HTML c формой и полями и файла-обработчика на PHP.

Внимание! Для работы нам достаточно создать соответственно всего два файла .

Демонстрация Скачать исходники
Рассмотрим пример с комментариями - реализация авторизации пользователя на сайте:

Код HTML (файл post.html)



Форма





Ваш логин:

Ваш пароль:





Теперь подробнее о методах передачи данных. Существует два вида GET (через url, открытый - можно изменить url вручную) и POST (через форму, закрытый). Отличие будет заключаться в содержании адресной строки, то есть url.

При получении данных переданных одним из этих способов в массив соответствующего методу типа ($_GET или $_POST) собираются данные. Также существует массив $_REQUEST, который может содержать и $_GET, и $_POST одновременно. Но это для других примеров. Рекомендую большинство данных передавать методом POST.

Теперь рассмотрим код обработчика.

Код PHP (в файле test_reg.php)

$login = $_POST["login"]; // принимаем данные отправленные POST
$pass = $_POST["pass"]; // login и pass - это name полей ввода

If (($login == "Admin") && ($pass == "Pass"))
echo "Здравствуйте, Admin! Сегодня кофе или чай?)";
else echo "Вы ввели неверную связку логин-пароль. Попробуйте ещё Назад";
?>
Вы можете видеть как в отдельные переменные мы записываем значение полей с соответствующими name в массиве $_POST, хотя также можно было собрать и в $_REQUEST.

В обработчике, пожалуй, проработаем условие авторизации - совпадают ли логин и пароль в форме с нашим выдуманным (соответственно Admin и Pass). И либо поздороваемся с входящим (Здравствуйте, Admin! Сегодня кофе или чай?), либо нет (Вы ввели неверную связку логин-пароль. Попробуйте ещё). Однако для создания полноценной авторизации Вам ещё надо ознакомиться с cookie, сессиями и . Но об этом позже.

Непосредственно в скрипте можно как угодно обрабатывать данные: дописывать, стирать, шифровать и так далее. Главное - это знать имя переменной (задаётся в HTML-форме) и дальше собирать их с помощью массивов $_POST, $_GET и $_REQUEST.

Спасибо за внимание!

Итак, мы снова продолжаем изучение основ PHP и в этой статье познакомимся со способами передачи переменных в PHP, а именно с методами GET и POST . Каждый из них имеет свои плюсы и минусы, и применяется в соответствующих ситуациях, речь о которых пойдет в данной статье. Мы также рассмотрим примеры кода, которые демонстрируют работу методов POST и GET.

Передача переменных при помощи метода GET

Данный метод передачи переменных применяется в PHP для передачи переменных в файл при помощи адресной строки. То есть переменные передаются сразу через адресную строку браузера. Примером может быть, например, ссылка на статью в WordPress без использования ЧПУ (SEF), которая имеет примерно следующий вид:

Https://сайт/?p=315

То есть в данном случае передается переменная $p со значением 315. Теперь давайте более подробно на примере рассмотрим работу метод GET. Пускай нам нужно передать в файл три переменных $a, $b и $c методом GET и вывести их сумму на экран. Для этого можно использовать следующий код.

$a = $_GET["a"]; $b = $_GET["b"]; $c = $_GET["c"]; $summa = $a + $b + $c; echo "Сумма $a + $b + $c = $summa";

Поскольку все переменные перед передачей будут помещаться в глобальный массив GET (), то мы первым делом присваиваем нашим переменным значения соответствующих элементов массива GET. Делаем это в самом начале во избежание разнообразных ошибок при передаче переменных. Далее для демонстрации работы прописываем произвольную формулу и выводим результат на экран.

Для проверки работы метода GET достаточно просто добавить к ссылке на файл знак вопроса «?» и через амперсанд «&» перечислить переменные с их значениями. Пускай у нас есть файл get.php , который лежит в корне сайта . Для того чтобы передать в файл переменные, достаточно прописать в адресной строке следующее.

Https://сайт/get.php?a=1&b=2&c=3

Как видно с примера, сначала мы добавляем знак вопроса сразу после названия файла. Далее прописываем переменную и через равно указываем ее значение. После этого через амперсанд аналогичным образом перечисляем другие переменные. Теперь при переходе по этой ссылке нам выведется сумма переменных $a, $b и $c.

Данный способ очень простой и не требует создания дополнительных файлов. Все необходимые данные поступают прямо через адресную строку браузера.

Ну а теперь давайте перейдем ко второму способу передачи переменных в PHP – методу POST .

Передача переменных в PHP при помощи метода POST

Данный способ позволяет скрыто передавать переменные с одного файла в другой. Как вы уже поняли, обычно для этих целей используются два файла. В первом находится форма для ввода исходных данных, а во втором исполнительный файл, который принимает переменные. Для демонстрации давайте рассмотрим следующий код.

Код первого файла с формой для отправки данных. Дадим ему название post-1.php

  • action – указываем файл, в который будут передаваться переменные.
  • method – метод передачи переменных. В нашем случае это метод POST.
  • name – название формы. Одновременно в файл будет передана переменная с таким именем.

Текстовые поля:

  • name – имена переменных. В нашем случае это имя и фамилия (переменные name и lastname).
  • type – тип поля. В нашем случае это текстовое поле.
  • name – имя кнопки и переменной, которая будет передана вместе с другими переменными.
  • type – тип кнопки. В нашем случае это кнопка для отправки данных.
  • value – текст на кнопке.

Код второго файла, который будет служить приемником переменных. Назовем его post-2.php

$name = $_POST; $lastname = $_POST; echo "Значения переменных, переданных методом POST - $name и $lastname";

Как и с методом GET, мы первым делом присваиваем переменным значения соответствующих элементов глобального массива POST . Далее для наглядности выводим эти переменные на экран при помощи .

Теперь при загрузке первого файла у нас загрузится форма. После введения данных жмем по кнопке «Отправить», в результате чего в новой вкладке у нас откроется страница со вторым файлом, на которой выведутся значения, прописанные в форме на предыдущей странице. То есть второму файлу будут переданы значения переменных с первого файла.

На этом данная статья про передачу переменных в PHP подошла к концу. Если вы не хотите пропустить появления других статей на блоге, рекомендую подписаться на новостную рассылку любым удобным способом в пункте «Подписка» либо воспользоваться формой ниже.

На этом все. Удачи вам и успеха в освоении основ PHP.

  1. Муж (супруг) — мужчина по отношению к женщине, с которой состоит в браке
  2. Жена (супруга) — женщина по отношению к мужчине, с которым состоит в браке. Замужняя женщина.
  3. Тесть — отец жены
  4. Тёща — мать жены
  5. Свёкор — отец мужа
  6. Свекровь — мать мужа
  7. Деверь — брат мужа
  8. Шурин — брат жены
  9. Золовка — сестра мужа
  10. Свояк — муж свояченицы
  11. Свояченица — сестра жены
  12. Зять — муж дочери, муж сестры, муж золовки
  13. Невестка — жена брата, жена сына для его матери, жена одного брата по отношению к жене другого брата; употребляется также вместо сноха, золовка, свояченица
  14. Сноха — жена сына по отношению к отцу
  15. Сват — отец одного из супругов по отношению к родителям другого
  16. Сватья — мать одного из супругов по отношению к родителям другого
  17. Дед (дедушка) — отец отца или матери.
  18. Бабушка (бабка) — мать отца или матери.
  19. Двоюродный дед — дядя отца или матери.
  20. Двоюродная бабушка — тетя отца или матери.
  21. Внук (внучка) — сын (дочь) дочери или сына по отношению к деду или бабушке. Соответственно двоюродный внук (внучка) — сын (дочь) племянника или племянницы.
  22. Внучатый племянник (племянница) — внук (внучка) брата или сестры.
  23. Дядька (дядя, дядюшка) — брат отца или матери, муж тетки.
  24. Тетка (тетя, тетушка) — сестра отца или матери по отношению к племянникам. Жена дяди по отношению к его племянникам.
  25. Племянник (племянница) — сын (дочь) брата или сестры (родных, двоюродных, троюродных). Соответственно ребенок двоюродного брата (сестры) — двоюродный племянник, троюродного брата (сестры) — троюродный племянник.
  26. Единоутробные (брат, сестра) — имеющие общую мать.
  27. Единокровные (брат, сестра) — имеющие общего отца, но разных матерей.
  28. Сводные (брат, сестра) — являющиеся братом (сестрой) по отчиму или мачехе.
  29. Двоюродный брат — сын родного дяди или родной тети.
  30. Двоюродная сестра — дочь родного дяди или родной тети.
  31. Троюродный брат — сын двоюродного дяди или двоюродной тети.
  32. Троюродная сестра — дочь двоюродного дяди или двоюродной тети.
  33. Кум, кума — крестные отец и мать по отношению к родителям крестника и друг к другу.
  34. Отчим — муж матери по отношению к ее детям от другого брака, неродной отец.
  35. Мачеха — жена отца по отношению к его детям от другого брака, неродная мать.
  36. Пасынок — неродной сын одного из супругов, приходящийся родным другому супругу.
  37. Падчерица — неродная дочь одного из супругов, приходящая родной другому супругу.
  38. Приемный отец (мать) — усыновившие, удочерившие кого-либо.
  39. Приемный сын (дочь) — усыновленные, удочеренные кем-то.
  40. Приемный зять (примак) — зять, принятый в семью жены, живущий в доме жены.
  41. Вдовец – мужчина, у которой умерла жена.
  42. Вдова – женщина, у которой умер муж.
  43. Побратимы — братья, в основном двоюродные, друзья, которым довелось выручать друг друга в тяжелые времена.