Autor Zpráva
farradox
Profil
Máte někdo zkušenosti s "inteligentním formulářem"? Stále s tím mám menší problém. Zvolil jsem takový to postup:
- Odešlu formulář
- vytvořím cookie a pokud se cookie vytvoří, tak přes hearder () přesměruji na původní stránku
- vytáhnu data z cookie
- vyplním formulář a vyhledám data.

Na localhostu mi všechno jede tak jak má, ale jak nahraji web na hosting, tak formulář cookie najde až při dalším prokliknutí. Do té doby je prázdný.

Nevíte v čem může být problém nebo jaký postup by jste mi doporučili?
Budulinek
Profil
K čemu tohleto používáš? Přijde mi to nějak moc zašmodrchané :) A popravdě moc nerozumím, proč to takhle děláš. Můžeš to nějak rozvést?
farradox
Profil
požívám to ve formuláři pro vyhledávání. Nevím jestli mám správně hlavně tu část s přesměrování header. Přišlo mi to taky jako blbost, neustále mám problém s tím jako by se ta cookie nestíhala vytvořit. Vždycky mi vyskakuje, že neexistuje a až po dalším kliknutí ji najednou najde...
Budulinek
Profil
No, to je hezké, že tím vyhledáváš, ale mně není moc jasné, jak to má fungovat? Je to nějak tak, že: vyplníš vyhledávání a odešleš formulář. Pak vytvoříš cookie a přesměruješ zpátky na stránku, odkuds odesílal formulář. Tady je to ještě jasné, vytáhneš data z cookie (co tam ukládáš a proč?), vyplníš formulář (??? podruhé, proč?) a vyhledáš data... Nebylo by jednodušší ty první tři kroky vynechat a "jen" vyplnit formulář a vyhledat data?

Nerozumím, proč máš tolik, dle mě, zbytečných kroků. Proto se ptám, jak to vlastně používáš, protože tomu nějak nemůžu přijít na kloub.
farradox
Profil
Protože využívám parametrické vyhledávání. Zadám 4 parametry (třeba: barevný display,interní paměť, hlasové vytáčení,budík) a vyhledám všechny objekty, která mají tyto funkce. Co když budu chtít vyhledat navíc polyfonní vyzvánění? To mám všechny parametry zadávat znova? Proto ta paměť pomocí cookie. Všechno budu mít stále zaškrtnuté a jenom přidám další.

Jinak jsem teď přišel na to, že pokud tu cookie vytvořím již při prvním vstupu na web a následně po odeslání formeláře do ní jen uložím data, tak to všechno pracuje jak má, ale stejně mi to přijde složité...
fajzen
Profil
farradox:
Možno to bude spôsobené tým, že po presmerovaní na pôvodnú stránku s formulárom sa použije stránka z cache pamäte (len hádam). Že by sa cookie nestihlo vytvoriť sa mi nezdá, hlavne keď hovoríš, že po druhom kliknutí to už ide...

Ak by som mal pravdu s tou cache pamäťou, mohlo by pomôcť posielanie príslušných hlavičiek pred presmerovaním:
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");

prípadne pripojiť k názvu stránky na ktorú sa presmerováva unikátny GET parameter:
header('Location: http://www.domena.cz/formular.php?uid=' . rand());


Ak by ani toto nepomohlo, mohli by sa vyplnené údaje z formulára predávať nie len pomocou cookies, ale aj v adrese ako GET parametre
farradox
Profil
Tak cache paměť nejspíš není ten problém :)
Předávání přes GET jsem měl prvně, ale chtěl jsem ať si pamatuje formuláře stále při návštěvě webu. Už mi to naštěstí jede, ale nepřijde mi to zrovna elegantní vytvářet prázdnou cookie už při vstupu na web. Děkuju za rady :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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