Zadejte hledaný výraz...

Jednoduchý formulář s přesměrováním

mmostore
verified
rating uzivatele
10. 6. 2016 22:26:48
Zdravím, potřebuji pomoc s jednoduchým formulářem.
Po zadání jakéhokoliv jména do políčka Jméno (např. Mickey) dojde po kliknutí na Submit k přechodu na adresu ve tvaru www.mojeadresa.cz/Mickey
Viz příloha...
Může mi někdo tento "jednoduchý" script napsat? Asi v PHP?
Děkuji :-)
10. 6. 2016 22:26:48
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201544
Dominik
verified
rating uzivatele
10. 6. 2016 23:51:20
Stačí to takto ?
http://milaniak.9e.cz/submit/submit.php
Endora samozřejmě vyhodí, že stránka neexistuje, ale pokud se podíváte do URL, tak to funguje.
10. 6. 2016 23:51:20
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201543
Pavel Šátek
verified
rating uzivatele
(4 hodnocení)
10. 6. 2016 23:51:52
Třída:
Kompletní příklad použití:
10. 6. 2016 23:51:52
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201542
TomasX
verified
rating uzivatele
(4 hodnocení)
11. 6. 2016 07:48:12
SatekPavel: prosím, dej pryč htmlspecialchars() a místo toho dej přímo do constructoru do constructoru urlencode()
Objektově to není správně, ale to tazateli vadit nebude. Tvůj příklad předpokládá zapnutý output buffer, jinak bude vyhazovat warning "headers already send", php kód by ideálně měl být hned na začátku, resp. hned za definicí třídy.
11. 6. 2016 07:48:12
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201541
mmostore
verified
rating uzivatele
11. 6. 2016 09:33:31
Napsal Dominik Milaniak;1298593
Stačí to takto ?
http://milaniak.9e.cz/submit/submit.php
Endora samozřejmě vyhodí, že stránka neexistuje, ale pokud se podíváte do URL, tak to funguje.
Ano takto mi to stačí. Můžeš sem vložit kód? :)
---------- Příspěvek doplněn 11.06.2016 v 09:35 ----------
Napsal SatekPavel;1298594
Třída:
Kompletní příklad použití:
Píše mi to chybu "Warning: Cannot modify header information - headers already sent by......."
11. 6. 2016 09:33:31
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201540
Pavel Šátek
verified
rating uzivatele
(4 hodnocení)
11. 6. 2016 09:46:52
Napsal TomášX;1298600
SatekPavel: prosím, dej pryč htmlspecialchars() a místo toho dej přímo do constructoru do constructoru urlencode()
Objektově to není správně, ale to tazateli vadit nebude. Tvůj příklad předpokládá zapnutý output buffer, jinak bude vyhazovat warning "headers already send", php kód by ideálně měl být hned na začátku, resp. hned za definicí třídy.
Jsem si toho vědom. Objektově to není správně, ale cílem tohoto bylo přeci udělat to jednoduché.
---------- Příspěvek doplněn 11.06.2016 v 09:52 ----------
Napsal mmostore;1298610
Ano takto mi to stačí. Můžeš sem vložit kód? :)
---------- Příspěvek doplněn 11.06.2016 v 09:35 ----------
Píše mi to chybu "Warning: Cannot modify header information - headers already sent by......."
Teď je to funkční.
11. 6. 2016 09:46:52
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201539
hm
verified
rating uzivatele
(20 hodnocení)
11. 6. 2016 09:55:17
Kdybys to chtel udelat jendoduchy tak nevytvaris zbytecnej objekt na neoc co zvladne jedna radka kodu... :)
11. 6. 2016 09:55:17
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201538
LM
verified
rating uzivatele
(17 hodnocení)
11. 6. 2016 09:56:57
Napsal SatekPavel;1298613
Jsem si toho vědom. Objektově to není správně, ale cílem tohoto bylo přeci udělat to jednoduché.
---------- Příspěvek doplněn 11.06.2016 v 09:52 ----------
Teď je to funkční.
Objektově správně nebo nesprávně je u takové krátké ukázky podle mě jedno. Ale co ten php s přesměrováním až pod html? To musí jasně hodit chybu.
11. 6. 2016 09:56:57
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201537
Dominik
verified
rating uzivatele
11. 6. 2016 13:30:12
já jsem to udělal opravdu jednoduše.
11. 6. 2016 13:30:12
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201536
Malcánek Jan
verified
rating uzivatele
(4 hodnocení)
11. 6. 2016 14:08:41
Ale zase je header za výpisem formuláře, takže se hlavička neodešle. Musí se to dát nahoru nad výpis html kódu.
11. 6. 2016 14:08:41
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201535
mmostore
verified
rating uzivatele
11. 6. 2016 15:13:38
Opět to píše chybu :(
Warning: Cannot modify header information - headers already sent by....
11. 6. 2016 15:13:38
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201534
Malcánek Jan
verified
rating uzivatele
(4 hodnocení)
11. 6. 2016 15:23:05
jak už tu psalo víc lidí, i já, dej si zpracování formuláře hned nahoru skriptu, hlavičky se musí odeslat předtím, než se odešle první výstup (echo, print, atd.).
11. 6. 2016 15:23:05
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201533
hm
verified
rating uzivatele
(20 hodnocení)
11. 6. 2016 15:27:57
Jezismarja... protoze uz dvakrat tu nekdo rekl ze funkce header proste musi byt an zacatku souboru, tam kde se jeste nevypisuji zadna data do vystupu, zcela logicky (jakmile je nejaky vystup, tak se hlavicky ukonci a jede uz jen vystup) tady ej to fakt samej odbornik, jeden vytvari celej objekt jen proto aby vypsal header s presmerovanim, navic s uplne stejnou chybou jako ostatni, tedy az po vystupu html... Tohle sem zkopiroval, jen upravil, pac nemam chut to tu psat... nicmene zhruba takhle to samozrejme fungovat bude... Ale neni to spravne reseni, neni tam zadna validace niceho
if (!empty($_POST)) {
header('location: /'.urlencode($_POST));
}
?>
BTW tohle isset($_POST) && !empty($_POST) je zybtecnej zapis, funkce empty se chova jako !isset($var) || $var == false - tedy je uplne bezpredmetny psat isset() && !empty() ... to jen tak mezi reci... kdyz uz nekdo cpe objekty vsude, tak bych cekal ze aspon tohle vi, ale to je ta dnesni degenerace vsemi frameworky... A proto nedelam s lidmi co umi jen ve frameworku, protoze to proste nejsou programatori
---------- Příspěvek doplněn 11.06.2016 v 15:55 ----------
A jeste jedno rejpnuti, proboha nepouzivajte echovani tim zpsuobem ze na kazdej radke pisete novy echo... zaprve jde echovat tak, ze ukoncite php ?> a po stringu ho zas zalozite
echo "jeden radek
druhej radek
treti radek
atd
";
??? tohle mi jeden clovek udelal u obrovskyho html, myslel sem ze ho zabiju, stravil dve hodiny tim ze kazdej radek rucne psal echo "html"; proste wtf...
11. 6. 2016 15:27:57
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201532
Malcánek Jan
verified
rating uzivatele
(4 hodnocení)
11. 6. 2016 16:20:42
Jsem fakt rád, že nejsem jediný, komu vadí tyto věci, které sice nejsou špatně, ale hrozně komplikují orientování v kódu. Taky nejradši napíšu jedno echo a do něj normálně píšu html. Navíc si to pak člověk oddělí tabulátory a má tu syntaxi odskočenou tak jak potřebuje a vyzná se v tom.
A u větších projektů teda nedám dopustit na MVC, které mi urychluje a zpřehledňuje práci (a mít výpis úplně mimo v samostatném souboru mi přijde taky jako pecka).
11. 6. 2016 16:20:42
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201531
hm
verified
rating uzivatele
(20 hodnocení)
11. 6. 2016 16:32:05
MVC je naprosto v poradku, je to jeden z nejpouzivanejsich navrhovych vzoru z dobreho duvodu... problem je kdyz nekdo umi jen Nette, ale nema jediny tuseni jak ten framework funguje pod poklickou a nedokaze ani napsat spravne kod an rpesmerovani, pac nema ani poneti, ze se header musi psat pres vystupem... Bohuzel lidi co umi copypastovat cizi kody ve frameworcich a mysli si jak programujou je hodne... A zacinam na to byt cimdal vic alergickej... V podstate to vidim tak, ze kdo neni schopnej napsat si svuj framework, protoze vi jak to funguje, to proste neni programator...
Lepit prikazy z exsitujicicho frameworku umi i cvicena opice
11. 6. 2016 16:32:05
https://webtrh.cz/diskuse/jednoduchy-formular-s-presmerovanim#reply1201530
Pro odpověď se přihlašte.
Přihlásit