Спільного між ними то що вони працюють однаково. Різниці між ними технічно ніякої. А ось ідеологічні відмінності є.
Я розповім про них в контексті PHP. Прошу зауважити що протокол HTTP до PHP має непряме відношення бо він створювався для обміну html сторінками а PHP просто розширює можливості і того і іншого.
GET запит використовується щоб отримати дані а POST щоб відправити. (Нагадую що технічно вони працюють однаково).
Тому в контексті PHP спираючись на цю ідеологію зробили такий спосіб:
1. При кожному запуску PHP за замовчуванням створюються суперглобальні масиви ($ _GET, $ _POST).
2. Якщо в рядку запиту є знак питання (?). Те все що після нього вважається параметрами GET запиту вони представлені в форматі "ключ" \u003d "значення" і як роздільник використовується знак амперсанда (&)
приклад:
GET /index.php?name\u003dАндрей&surname\u003dГалкін
це рядок запиту, тут 2 параметра. ці параметри потраплять в масив $ _GET.
3. $ _POST заповнюється іншим способом. вміст цього масиву заповнюється з "заголовків запиту". Тобто з місця, прихованого від очей в явному вигляді. Всю рутину по створенню таких заголовків бере на себе браузер. Хоча іноді і щось редагується в заголовках в ручну.
Найчастіше пост запит використовується в формах (для відправки даних).
Наприклад у нас є форма для входу 2 поля логін і пароль.
Уявімо що ми використовуємо GET метод. Тоді при відправці форми ми перейдемо на наступну адресу /login.php?login\u003dАндрей&password\u003d123 погодьтеся що так передавати таку інформацію зовсім небезпечно. Будь-хто може відкрити ваш браузер і починаючи вводити адресу сайту він з історії може побачити ваші паролі і логіни.
А ось якби ми вказали методом POST то ми б отримали такий запит:
POST /login.php (login \u003d Андрій & password \u003d 123) то що в дужках було б приховано і ніяк не збережено в браузері.
Загалом підсумовуючи:
GET - це щоб отримати певну сторінку в певному виді (сортування, поточна сторінка в блозі, рядок пошуку і т.п.).
POST - для оправлення даних які не впливають на відображення сторінки, в тому плані що ці дані впливають тільки на результат виконання скрипта (логіни, паролі, номери кредиток, повідомлення і т.п.).
І ще одна хороша новина їх можна комбінувати, наприклад
POST /index.php?page\u003dlogin (login \u003d Андрій & password \u003d 123) Думаю я вже досить пояснив що з цього вийде і які параметри в який масив потраплять.
Застосування методів GET і POST в PHP важко переоцінити, оскільки ці методи зустрічаються практично на кожному сайті. Перш ніж вивчати нижче описаний матеріал, раджу ознайомиться з html тегом
Action і method
Form має багато атрибутів, але основними і обов'язковими є
Атрибут Action
Можна вказати шлях "form.html", але частіше використовуються обробники написані на мові "php (form.php)". Може бути і такий варіант, що сторінка, на якій знаходиться форма, сама обробляє значення і написана на мові php. В цьому випадку можна не вказувати атрибут
Також, в якості обробника може служити адреса електронної пошти. Щоб записати його в атрибуті action використовується ключове слово mailto :, в ньому вказується ім'я E-Mail адреси.
Якщо використовувати E-Mail для відправки, то при активації, відкриється стандартна програма Windows.
Атрибут Method
Всього способів обробки 2 -
Кожен із значень можна вводити як з великою, так і з маленької літери. Великого значення це не має.
метод GET
Даний метод є дуже зручним, тому що дозволяє міняти отримані значення в браузерної рядку. Крім того, на його адресу можна посилатися кілька разів.
![](https://i0.wp.com/fokit.ru/wp-content/uploads/2018/08/Kartinka-dlya-stati-7.png)
Поганий стороною використання
Не використовуйте
метод POST
метод
Більша кількість інформації роблять його більш придатним для великих форумів і поштових служб. Він краще підходить для роботи з базами даних.
Оброблювані значення зберігаються один раз, а потім залишаються незмінними. Тобто не можна звертатися до одного й того ж адресою необмежену кількість разів, як при використанні методу
висновок
У цій статті ви більш детально ознайомилися з атрибутами тега form, а також зі значеннями
Можете детально розібратися в цих методах вивчивши додаткову інформацію. Удачі в вивченні!
Сьогодні мені трохи захотілося вдариться в примітивні речі і описати те, що можна знайти у всесвітній мережі в великій кількості і без особливих труднощів. Йтиметься практично про святая святих протоколу HTTP: POST і GET запитах.
Багато запитають навіщо? Відповім коротко і ясно: що це і навіщо це потрібно - знають далеко не всі, а ті хто хоче дізнатися про це (при цьому мало що розуміючи в it сфері) часто не можуть зрозуміти те що пишуть в багатьох і багатьох статтях присвячених даній темі. Я ж постараюся на пальцях пояснити що таке POST і GET запити і з чим їх їдять.
Отже, почнемо нашу подорож в казку ...
Якщо ви читаєте це повідомлення, то Ви як мінімум знаєте як виглядає Інтернет і що таке Інтернет сайт. Опустивши всі тонкощі роботи всесвітньої павутини, будемо оперуватися такими поняттями як користувач і сайт. Як не крути але ці два суб'єкти повинні якось взаємодіяти один з одним. Ось люди, наприклад, спілкуються між собою завдяки жестам, емоціям і мови, тварини видають якісь звуки, а що ж відбувається при «спілкуванні» людини і Інтернет ресурсу? Тут ми маємо випадок обміну інформацією, який можна перенести і на людський розмова плану «Питання-відповідь». Причому і питання і відповіді можуть задавати як і користувач, так і сайт. Коли ми говоримо про сайт, то його питання і відповіді, як правило, завжди виражаються у вигляді Інтернет сторінки з тим чи іншим текстом. Коли ж мова йде про користувача, то тут все відбувається завдяки GET і POST запитам (звичайно не тільки, але ми говоримо про них).
Таким чином ми з'ясували, що об'єкти нашої теми необхідні для «спілкування» з сайтами. Причому як і GET, так і POST запити можуть використовуватися і для «завдання питань» сайту і для «відповідей». Чим же вони відрізняються? Все досить просто. Однак для пояснення відмінностей, доведеться розглянути приклад, в якості якого візьмемо сайт плану Інтернет магазин.
Напевно Ви часто звертали увагу, коли шукали що-небудь в онлайн магазинах, що вдаючись до пошуку по фільтрам, адреса сайту перетворювався з красивого «http://magaazin.ru» в страшний «http://magaazin.ru/?category\u003d shoes & size \u003d 38 ». Так ось, все що йде після символу '?' І є Ваш GET запит сайту, а якщо бути зовсім точним, то в даному випадку Ви як би питаєте сайт, про те що у нього є в категорії «Взуття» з розмірів «38» (даний приклад взятий з голови, на ділі все може виглядати не так очевидно). У підсумку ми маємо що питання ми можемо задавати самі, шляхом зазначення їх в рядку адреси сайту. Очевидно, що даний метод має кілька недоліків. По-перше, будь-який хто знаходиться поруч з користувачем за комп'ютером, може спокійно підглянути все дані, тому використовувати даний вид запитів для передачі паролів вкрай не бажано. По-друге, є обмеження на довжину рядка, яка може бути передана з поля адреси сайту, а значить особливо багато даних передати не вийде. Однак безсумнівним плюсом використання GET запитів є його простота використання і можливість швидко питати сайт, що особливо буває корисно при розробці, але це вже інша історія ...
Тепер поговоримо про POST запитах. Догадливі читачі, можливо, зметикували, що головним відрізняємо даного запиту від його побратима - скритність переданих даних. Якщо розглядати Інтернет магазин, то яскравим прикладом де використовується запит POST - реєстрація на сайті. Сайт запитує Ваші дані, Ви ці дані заповнюєте і при натисканні на кнопку «Реєстрація» посилаєте свою відповідь. Причому ніяк зовні ці дані не відобразяться. Так само варто відзначити, що запитувати можуть досить велика кількість інформації - а значущий обмежень POST запит не має. Ну і якщо торкнутися мінус, то такий запит швидко не сгенеріруешь. Без спеціальних навичок, тут вже не обійтися. Хоча насправді все не так вже й складно, але це знову ж таки - інша історія.
Підіб'ємо невеликий підсумок. POST і GET запити потрібні для «спілкування» користувача і сайту. Вони по суті практично є протилежністю один одного. Використання тих чи інших видів запитів залежить від конкретної ситуації і користуватися тільки одним видом запиту вкрай незручно.
опис
Атрибут method повідомляє серверу про метод запиту.
синтаксис
значення
Значення атрибута method не залежить від регістра. Розрізняють два методи - get і post.
Get Цей метод є одним з найпоширеніших і призначений для отримання необхідної інформації і передачі даних в адресному рядку. Пари «ім'я \u003d значення» приєднуються в цьому випадку до адреси після знаку питання і розділяються між собою амперсандом (символ &). Зручність використання методу get полягає в тому, що адреса з усіма параметрами можна використовувати неодноразово, зберігши його, наприклад, в закладки браузера, а також змінювати значення параметрів прямо в адресному рядку. post Метод post посилає на сервер дані в запиті браузера. Це дозволяє відправляти більшу кількість даних, ніж є методом get, оскільки у нього встановлено обмеження в 4 Кб. Великі обсяги даних використовуються у форумах, поштових службах, заповненні бази даних, при пересиланні файлів і ін.
обов'язковий атрибут
Значення за замовчуванням
HTML5 IE Cr Op Sa Fx