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
<form method="post">
Coompiik
Profil
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
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
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
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.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: