GET, POST, header, session?!?!
5 отговора
163 прегледа
GET, POST, header, session?!?!
ей тия 4 работи някой ще ми каже ли къде да прочета и да ги разбера.Знам че има мануал php-то, но там не си ги обяснявам много добре. Друг източник ако ми дадете ще е супер - англ. не е проблем. кое къде отива, как се правят връзки между сайтове и да се пращат променливи, масиви и т.н. Ако го има някъде с примерчета и т.н., простичко написано плс споделете. Ако трябва да чета някое RFC къжете кое че те са безброй.
гледам тук RFC 2068, 2616 и разни други. и не знам кое е най-яко да прочета.
Благодаря предварително за отделеното време.
гледам тук RFC 2068, 2616 и разни други. и не знам кое е най-яко да прочета.
Благодаря предварително за отделеното време.
?!?!
Не знам какво да кажа .... на мен ръководството (+ User Notes) ми се вижда просто разкошно ... а принципно - търсачки колкото искаш ...
Ако въпросът ти е по-скоро теоретично ориентиран отколкото приложно (в смисъл питаш повече за методите за заявки в HTTP (GET, POST, HEAD, PUT, OPTIONS, TRACE ...) тогава не е лошо да погледнеш по-сериозно това -
[линк] (RFC 2616 - sec 9)
Ако въпросът ти е по-скоро теоретично ориентиран отколкото приложно (в смисъл питаш повече за методите за заявки в HTTP (GET, POST, HEAD, PUT, OPTIONS, TRACE ...) тогава не е лошо да погледнеш по-сериозно това -
[линк] (RFC 2616 - sec 9)
Re: GET, POST, header, session?!?!
обяснявам на кратко:
GET :
Параметрите са в url-то
Пример:
GET /index.php HTTP/1.1
a=1&v=2
означава :
Към фаил index.php да се предадат променливите а и v със стойности съответно 1 и 2, като заявката се показва от браузери и логове така:
/index.php?a=1&v=2
POST :
Параметрите сe предават по скрито от url-то
Пример:
POST /index.php HTTP/1.1
a=1&v=2
означава :
Към фаил index.php да се предадат променливите а и v със стойности съответно 1 и 2, като заявката се показва от браузера и е в лога така
/index.php
Разликата между двете е :
POST може да приеме неограничено количество данни (зависи от настройките на web сървъра), докато GET заявките са ограничени до 255 символа мисля (дължина на URL)
session :
Това е фаил, който се създава от web сървъра (и/или препроцесорите към него) и съдържа данни които искаш да си имаш във всеки скрипт изпълняван от съответния клиент (на който се дава UniqueIndentifier)
Пример :
фаил /tmp/sess_ba4888bdc247cd2d9f0e46c66690af7e
lang|s:2:"bg"; - означава :
за сесия ba4888bdc247cd2d9f0e46c66690af7e променливата lang е стринг с дължина 2 и стойност bg
Header:
Служебна информация подавана от web сървъра към browser-a, не се показва, но се изпълнява :
пример:
при заявка :
GET /index.php
Location: /dir/path/script
ще накара браузера да отиде към /dir/path/script и няма да покаже index.php
В хедърите влизат доста неща, пълно описание има по нета
root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy
GET :
Параметрите са в url-то
Пример:
GET /index.php HTTP/1.1
a=1&v=2
означава :
Към фаил index.php да се предадат променливите а и v със стойности съответно 1 и 2, като заявката се показва от браузери и логове така:
/index.php?a=1&v=2
POST :
Параметрите сe предават по скрито от url-то
Пример:
POST /index.php HTTP/1.1
a=1&v=2
означава :
Към фаил index.php да се предадат променливите а и v със стойности съответно 1 и 2, като заявката се показва от браузера и е в лога така
/index.php
Разликата между двете е :
POST може да приеме неограничено количество данни (зависи от настройките на web сървъра), докато GET заявките са ограничени до 255 символа мисля (дължина на URL)
session :
Това е фаил, който се създава от web сървъра (и/или препроцесорите към него) и съдържа данни които искаш да си имаш във всеки скрипт изпълняван от съответния клиент (на който се дава UniqueIndentifier)
Пример :
фаил /tmp/sess_ba4888bdc247cd2d9f0e46c66690af7e
lang|s:2:"bg"; - означава :
за сесия ba4888bdc247cd2d9f0e46c66690af7e променливата lang е стринг с дължина 2 и стойност bg
Header:
Служебна информация подавана от web сървъра към browser-a, не се показва, но се изпълнява :
пример:
при заявка :
GET /index.php
Location: /dir/path/script
ще накара браузера да отиде към /dir/path/script и няма да покаже index.php
В хедърите влизат доста неща, пълно описание има по нета
root@ro6avia#echo rm -rf * > /bin/seek_and_destroy
root@ro6avia#/bin/seek_and_destroy
Re: GET, POST, header, session?!?!
В отговор на:POST може да приеме неограничено количество данни (зависи от настройките на web сървъра),
+ РНР post_max_size
за GET ... мамата си щрака ... зависи и от браузъра и прокси и кво ли не.
-
The night rolls on like slow moving train,
and soul cries out for a handful of rain.
Re: GET, POST, header, session?!?!
за да разбереш разликата между GET и POST заявките трябва да си наясно как работи http протокола.
ето ти малко теория :-) няма да ти обяснявам процедурата по сосъществяване на tcp връзката а само най- общо http протокола
значи когато връзката е осъществена клиента изпраща заявка към сървъра която изглежда най общо така :
GET /dir/file.html HTTP/1.0
Accept: image/gif, image/x-xbitmap ...........
Accept-Language: en
UA-pixels: 1024x768
...
(празен ред)
това ще рече че клиента желае файла /dir/file.html който е разположен в директорията на сървъра.
празният ред указва на сървъра да спре да приема и да почне предаване:
(заглавен блок на сървъра)
...
(празен ред)
(съдържанието на файла)
Разликата между GET и POST заявките е в предаването на данните(променливите) КЪМ сървъра
GET заявката ги дописва в реда с името на файла:
GET /dir/file.php?data1=1&data2=2&data3=3 HTTP/1.0
А пост заявката ги дописва в края на заглавният си блок
POST /dir/file.html
...
(празен ред)
data1=1
data2=2
data3=3
(затова не излизат в адрес бара на браузъра)
header заявката променя заглавните блокове на ОТГОВОРЪТ на сървъра - най-често се използват за пренасочване на клиента към друга страница или за работа с cookes -ите но имат и много други полезни функций като забрана за кеширане на данни и още доста други
а session се използва за запазване на състоянието на променливите при преход от една страниза на друга (в рамките на сървъра разбирасе) или за запазване на състоянието до следващото посещение на клиента
най - грубо казано това е разликата :-)
ето ти малко теория :-) няма да ти обяснявам процедурата по сосъществяване на tcp връзката а само най- общо http протокола
значи когато връзката е осъществена клиента изпраща заявка към сървъра която изглежда най общо така :
GET /dir/file.html HTTP/1.0
Accept: image/gif, image/x-xbitmap ...........
Accept-Language: en
UA-pixels: 1024x768
...
(празен ред)
това ще рече че клиента желае файла /dir/file.html който е разположен в директорията на сървъра.
празният ред указва на сървъра да спре да приема и да почне предаване:
(заглавен блок на сървъра)
...
(празен ред)
(съдържанието на файла)
Разликата между GET и POST заявките е в предаването на данните(променливите) КЪМ сървъра
GET заявката ги дописва в реда с името на файла:
GET /dir/file.php?data1=1&data2=2&data3=3 HTTP/1.0
А пост заявката ги дописва в края на заглавният си блок
POST /dir/file.html
...
(празен ред)
data1=1
data2=2
data3=3
(затова не излизат в адрес бара на браузъра)
header заявката променя заглавните блокове на ОТГОВОРЪТ на сървъра - най-често се използват за пренасочване на клиента към друга страница или за работа с cookes -ите но имат и много други полезни функций като забрана за кеширане на данни и още доста други
а session се използва за запазване на състоянието на променливите при преход от една страниза на друга (в рамките на сървъра разбирасе) или за запазване на състоянието до следващото посещение на клиента
най - грубо казано това е разликата :-)