abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 1
    dnes 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 01:55 | Nová verze

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    včera 19:33 | Nová verze

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | IT novinky

    Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.

    Ladislav Hagara | Komentářů: 2
    včera 12:33 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 1
    včera 04:00 | Nová verze

    Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 6
    včera 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    včera 00:33 | IT novinky Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední včera 18:34
    Rozcestník

    Dotaz: POST + Redirect (PHP)

    31.3.2011 23:25 LuRy | skóre: 12
    POST + Redirect (PHP)
    Přečteno: 3317×
    Zdarek, potrebuju radu. Potrebuju udelat neco jako simulaci odeslani formu, tak ze form vyplnim a odeslu s tim ze se presmeruje na adresu zadanou v action. Chci to udelat pres "mezi skript" na kterej se danej form odesle vytahnu si z nej data a slozim post data k odeslani ale porad nemuzu prijit na to jak to odeslat i s tim aby se mi dana stranka presmerovala stejne jako u formu.

    Řešení dotazu:


    Odpovědi

    1.4.2011 01:08 Sten
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Jde to přes JavaScript, něco jako:
    <body onLoad="document.getElementById('form').submit()">
        <form id="form">
            ...
        </form>
    </body>
    
    1.4.2011 01:35 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    to me taky napadlo ale neuvatzoval sem o tom .. nekdo muze mit vyply js nebo podobne.. a to si nemuzu dovolit aby se to neposlalo
    gogloid avatar 1.4.2011 02:20 gogloid | skóre: 10 | blog: Tomášovy poznatky | Kladno/Brno
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Ono se to tak dělá - po prvním odeslání formuláře se zobrazí jiný, který se automaticky pomocí JS odešle; a pro ty, kteří nemají povolený JS se vypíše: "Pro pokračování klikněte zde." (což bude submit button). Toto má trochu nevýhodu v tom, že uživatel (resp. potenciální útočník) může ta data mezitím změnit.

    Další možnost je poslat ta data skrz POST ze serveru, tj aby se tvůj server choval jako klient.
    1.4.2011 07:47 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Mohl byste ještě jednou popsat, čeho chcete docílit? Píšete o nějaké simulaci, ale dál v tom popisu nevidím nic jiného, než normální odeslání formuláře z prohlížeče na server metodou POST, server na to odpoví přesměrováním a prohlížeč načte GETem tu stránku, na kterou byl přesměrován. Tedy klasický POST-redirect-GET.
    1.4.2011 11:07 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Mam FORM na odesilajici POST na stranku www.test.cz ale abych si vytahnul odesilany post data chci to udelat pres mezi skript tak ze form na www.abc.cz , ve kterym si ulozim post a znovu ho zrekonstruuju a odeslu na www.test.cz. Toho sem docili cURLem ale ten mi vrati pouze vysledek html co dostanu to funguje... ale portebuju udelat stejny efekt jako ma odeslani FORMu na adresu v action, ze se posle post a presmeruje na tuto stranku.

    Slo by to resit vyse uvedenym zpusobem pres js, ale tam potrebuju 100% jistotu ze to bude fungovat.

    Vyresil sem to zatim tim ze sem vycistil output buffer a vysledek z curlu
    1.4.2011 13:22 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Pořád nechápu, co chcete udělat. Zkusím podrobně popsat, co jste napsal, a vy to případně doplňte či opravte:
    1. Existuje formulář na www.abc.cz. Vy připravíte formulář se stejnou strukturou dat, který se bude odesílat na www.test.cz
    2. Internetový prohlížeč otevře tento vámi připravený formulář. Formulář je nastaven na odeslání metodou POST na www.abc.cz
    3. Uživatel formulář vyplní a odešle na server www.abc.cz
    4. Aplikace na serveru www.abc.cz data zpracuje a zároveň přijatá data z formuláře pošle metodou POST na www.test.cz
    5. Server www.test.cz vrátí aplikaci na www.abc.cz buď přesměrování a novou adresu, nebo rovnou obsah nové stránky.
    6. Aplikace na serveru www.abc.cz vrátí internetovému prohlížeči obsah nějaké stránky nebo nějaké přesměrování.
    U bodu 5 byste si měl zjistit, co server www.test.cz vrací, u bodu 6 napište, co chcete.
    1.4.2011 18:21 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Mam web abc.cz na nem formular ktery odesle post data na abc.cz/test a zaroven presmeruje podle < form action="abc.cz/test">. Na abc.cz/test bude skript kterej formular zpracuje a potrebuju aby post data preposlal na test.cz a presmeroval na nej stejne jako to udelal formular abc.cz na abc.cz/test.

    abych udelal neco stejneho jako kdyby tam byl dalsi formular na abc.cz/test kterej ma action="test.cz". Vpodstate shodne reseni jako je automaticke poslani fomrulare v body onload akorat s tim rozdilem ze by to nezpracovaval javascript.
    1.4.2011 18:35 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Mam web abc.cz na nem formular ktery odesle post data na abc.cz/test a zaroven presmeruje podle <form action="abc.cz/test">.
    Tomuhle pořád nerozumím. V HTML stránce máte formulář, který má uvedeno action="abc.cz/test". To znamená, že když v prohlížeči dáte odeslat, prohlížeč data odešle právě na tuhle adresu – otevře spojení se serverem a pošle HTTP požadavek, jehož součástí jsou data formuláře. Server na tento požadavek odpoví, a odpověď zpracuje prohlížeč – pokud je to odpověď např. 200 OK, zobrazí tělo odpovědi (zpravidla je to další HTML stránka), pokud je to některý z kódů pro přesměrování, provede přesměrování na novou adresu.
    1.4.2011 18:41 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    1.4.2011 18:58 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Takže jde o to, aby prohlížeč poslal data z formuláře na nějakou adresu, a vzápětí ještě na na jinou (kterou nejspíš dostane odpověď od prvního serveru).

    Pokud je těch dat málo a vejdou se do GET požadavku, můžete z prvního serveru odpovědět přesměrováním na novou adresu a data připojit jako parametry. Komunikace by pak vypadala přibližně takhle:
    POST /akce.php HTTP/1.1
    Host: server-1
    Content-Length: 123
    
    pole1=abc
    pole2=def
    
    
    HTTP 303 See other Location: http://server-2/akce.php?pole1=abc&pole2=def
    GET /akce.php?pole1=abc&pole2=def HTTP/1.1 Host: server-2
    Adresa i s parametry se pak zobrazí v adresním řádku prohlížeče.

    Kód 303 je definován až v HTTP 1.1, pro klienty HTTP 1.0 byste musel použít kód 302 (klienti jej chápou jako kód 303 v HTTP 1.1, i když to není zcela v souladu se standardem).

    Druhá možnost dělá přesně to, co jste požadoval, ale je dostupná až s protokolem HTTP 1.1 – využívá kód 307, který prohlížeči říká, že se má přesměrovat na jinou adresu, ale má použít stejnou metodu (a u POSTu tedy logicky i stejná data). Vypadalo by to tedy takhle:
    POST /akce.php HTTP/1.1
    Host: server-1
    Content-Length: 123
    
    pole1=abc
    pole2=def
    
    
    HTTP 307 Temporary Redirect Location: http://server-2
    POST /akce.php HTTP/1.1 Host: server-2 Content-Length: 123 pole1=abc pole2=def
    Nikdy jsem to ale v praxi nezkoušel, takže nevím, jestli se dnes používané prohlížeče zachovají správně. Také je možné, že některé prohlížeče budou varovat, že se data odesílají na jinou doménu. Ale to už je na vás, abyste to vyzkoušel a otestoval :-)
    1.4.2011 20:08 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    od toho externiho skriptu sem dostal Bad Request. Kazdopadne diky za pomoc asi to necham tak jak to mam :D Udelal sem vystup pres curl vycistil output buffer prepsal str_replace cesty k obrazkum/skriptum/css a na konec vypisu hodil die()
    1.4.2011 21:40 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Není možné, že máte v těch datech něco špatně, že jste ten formulář změnil? Také je možné, že funguje jenom na POST a ne na GET, a vrací špatnou hlavičku (měl by v takovém případě vrátit spíš Bad Method).
    1.4.2011 19:05 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Bude tady problém v terminologii přeposlat, odeslat.
    Když odešlete formulář tak jej odešlete na adresu uvedenou v action (ne přepošelete) a logicky, když to tam odešlete, tak tam i jste (client).
    Vy tedy chcete:
    • ze stránky http://badgateway.cz/abclinuxu/ odeslat formulář na http://badgateway.cz/abclinuxu/test.php. (to máte).
    • Odelsaná data zpracujete ve scriptu test.php
    • Současně chcete aby se tato data (formulář) odeslala ještě na stránku test2.php
    Fčil to začne: a chcete znovu znovu provádět srcipt test.php nebo na stránky test.php prostě můžete zůstat (s tím že ta data byla odeslána i na test2.php) ?
    Chcete
     
    A  
    |−> B (zde jste viditelně, toto je uvedeno v action form-u)
    '−> C (toto je provedeno na pozadí)
    
    NEBO
     
    A −> B −> C −> B
    
    ?
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    1.4.2011 19:34 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    soucastne ne, poslou se z test.php na test2.php (proto sem napsal preposlat) pricemz test2.php je mimo muj server.
    1.4.2011 20:50 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    No nemyslel jsem doslova současně, ale to už je jedno… :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    1.4.2011 18:22 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    asi mam problem stim popsat to co vlastne chci .. zkusim to zpracovat jako ukazku na webu
    Josef Kufner avatar 1.4.2011 19:23 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    Skoro bych si i tipnul, že jakmile se ti povede zformulovat dotaz, tak si sám odpovíš.
    Hello world ! Segmentation fault (core dumped)
    1.4.2011 20:04 LuRy | skóre: 12
    Rozbalit Rozbalit vše Re: POST + Redirect (PHP)
    delal sem to v noci vcera a mezitim nez mi tu nekdo odpovedel vyresil sem to jinak mozna i prijemnejc ale tohle me porad vrtalo hlavou

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.