Autor | Zpráva | ||
---|---|---|---|
Coompiik Profil |
Dobrý den,
Chtěl bych se zeptat, lze nějak udělat aby se data vyplněná v formuláři co se poté odešlou do zpracovávacího skriptu nebyla za ?, řekněme že do inputu ahoj napíšu Jak se máš, pak to bude vypadat nějak takto: .../zpracuj.php?ahoj=Jak+se+máš, šlo by aby se data odeslali ke zpracování ale stránka na které jsem byla pouze zpracuj.php? Předem děkuju za odpověd a doufám že nebudete psát přízpěvky typu to ví každej, to je blbost atd, protože jak je v popisku: Zeptejte se na libovolnou blbost, každý hněkdy začínal |
||
juriad Profil |
#2 · Zasláno: 1. 1. 2014, 20:40:03
<form method="post"> |
||
Coompiik Profil |
#3 · Zasláno: 1. 1. 2014, 21:00:44
Děkuju, nikdy sme nevěděl jakej je rozdíl mezi GET a POST, a ani mě to moc nezajímalo, vždy jsem používal GET, ještě jednou děkuju.
|
||
koksiksloop Profil |
Coompiik:
„jakej je rozdíl mezi GET a POST“ GET je metoda základní (nemusí se zadávat). Data odeslaná metodou GET jsou součástí URL za otazníkem a jsou vidět. Používá se většinou u krátkých formulářů. Metoda POST je vhodná pro rozsáhlejší vstupy. Data nepřidává do URL (takže nejsou vidět), ale odesílá je jako samostatný HTTP objekt. Doporučuje se postovat vstupy obsahující hesla a dlouhé vstupy, protože get je omezen na 1024 znaků. Podívej se ZDE. |
||
jenikkozak Profil |
#5 · Zasláno: 2. 1. 2014, 16:18:49
koksiksloop:
Ta definice není zvolena úplně šťastně. Rozdělení formulářů na krátké a ostatní je zavádějící. Přihlašovací formulář může být podstatně kratší než „pokročilé“ filtrování pomocí více parametrů, přesto pro přihlášení se vždy použije metoda post a pro filtry spíše get .
Lepší definice by byla následující: Pokud chceš, aby výsledkem formuláře byla stránka s novou adresou, zvol metodu get (která se použije i v případě, že ve formuláři atribut method neuvedeš). V opačném případě užij metodu post .
Příklady pro procvičení výše uvedeného pravidla: 1) Vytvářím filtrování notebooků v e-shopu. Uživatel ve formuláři zvolí velikost displeje, barvu a další parametry. Chci, aby uživatel si mohl výsledek filtrace uložit do oblíbených položek nebo třeba poslat známému ve tvaru http://example.com/?display=15&barva=cerna . Volím metodu get a vytvářím tak stránku, na kterou se uživatel bude moci vrátit.
2) Mastím přihlašovací formulář, kam uživatel zadává nick a heslo. Nechci, aby se tyto údaje staly součástí adresy stránky ve tvaru http://example.com/?jmeno=jenikkozak&heslo=111111 , protože tato adresa se (mimo jiné) ukládá do historie prohlížeče, odkud ji lze snadno zkopírovat. Volím metodu post .
3) Páchám formulář, kterým se přidává nový článek na web. Nechci, aby každý, kdo použije vytvořenou adresu ve tvaru http://example.com/?nadpis=Krásný článek&text=Tento článek je jeden z nejepičtějších článků , vložil na web ten samý příspěvek. Použiji metodu post .
4) Buduji kalendář, kde si uživatel ve formuláři vybere měsíc a rok a web mu vypíše události daného období. Chci, aby uživatel mohl na výsledky odkázat adresou http://example.com/?rok=1515&mesic=7 . Použiji metodu get .
|
||
Coompiik Profil |
#6 · Zasláno: 2. 1. 2014, 16:30:29
Děkuju, tohle vysvětlení jsem vážně pochopil, a hodně mi pomohlo vzhledem k tomu že se teď zaměřuji hlavně na PhP a Formuláře.
|
||
Chamurappi Profil |
#7 · Zasláno: 2. 1. 2014, 18:51:08
Reaguji na Coompiika:
„jakej je rozdíl mezi GET a POST“ Viz mé čtyři body ve tři roky starém vlákně. Reaguji na koksiksloopa: „protože get je omezen na 1024 znaků.“ Údaj z JPW není zcela přesný, spolehnout se dá na tuším 2048 znaků za doménou. |
||
Časová prodleva: 10 let
|
0