Autor | Zpráva | ||
---|---|---|---|
Prkny Profil |
#1 · Zasláno: 2. 5. 2012, 19:17:25
Dobrý den,
na e-shopech se setkávám s formulářem GET, který po odeslání vytvoří URL adresu na kterou se přesměruje. Adresa s formulářem je např. http://www.domena.cz/lednicky/ Adresa po vybrani dvou položek a odeslání formuláře: http://www.domena.cz/lednicky/zn=BOSCH,ELECTROLUX Jak to udělat ? Zde je form: <form action="" method="get"> <li><label><input name="filter[]" value="BOSCH" type="checkbox"></label></li> <li><label><input name="filter[]" value="CANDY" type="checkbox"></label></li> <li><label><input name="filter[]" value="ELECTROLUX" type="checkbox"></label></li> <li><label><input name="filter[]" value="GORENJE" type="checkbox"></label></li> <button type="submit" class="" title="Zobrazit">Zobrazit</button> </form> |
||
candiess Profil |
#2 · Zasláno: 2. 5. 2012, 21:31:14
Prkny:
Přečti si něco o onsubmit="" případně o onclick=""
Nakopnu tě „<button type="submit" class="" title="Zobrazit">Zobrazit</button>“ <button type="submit" class="" onclick="create_url()" title="Zobrazit">Zobrazit</button> //JS část: function create_url() { //posbírání zaškrklých checkboxů //vytvoření url //a přesměrování location.href = nova_url; } |
||
Prkny Profil |
#3 · Zasláno: 3. 5. 2012, 08:37:42
Možná nevhodná otázka, ale musím se zeptat, bez JS to asi nejde ? Jde o to jak by se to mělo chovat při vypnutém JS ?
|
||
nemeja Profil |
šlo by to i pomocí php, porovnávat hodnoty checkboxů a potom to dle těchto parametrů seřadit.
Prkny: „Jde o to jak by se to mělo chovat při vypnutém JS ?“ Pokud nebude mít zaplej PHP, tak stejně budeš muset to řešit PHP. |
||
Prkny Profil |
#5 · Zasláno: 3. 5. 2012, 09:03:53
to je pravda metodu get poslat do externiho souboru a v něm z toho udělat požadovanou url adresu
|
||
nemeja Profil |
#6 · Zasláno: 3. 5. 2012, 09:53:45
Prkny:
moc to komplikujete, staci dat odeslat a GET vam vytvori adresu. Neresil bych jestli to je v tvaru zn=bosch,lg. GET vyhodi treba ?lg=1&bosch=0&sony=1 a s tim bych pracoval |
||
Prkny Profil |
#7 · Zasláno: 3. 5. 2012, 11:15:34
abych s nimi mohl lépe pracovat rad bych znal ty názvy proměnných ... tedy alespoň ?zn=lg&zn=bosch&zn=sony... ale to tim asi neudelam ... ??
ale to nevím zda se to nepřepisuje a promena zn nebude poslední parametry tedy pouze sony <input type="checkbox" name="zn[]" value="lg" /> Skladem</label> <input type="checkbox" name="zn[]" value="sony" /> Akční nabídka</label> <input type="checkbox" name="zn[]" value="bosch" /> Novinky</label> <input type="checkbox" name="zn[]" value="samsung" /> Výprodej</label> |
||
peta Profil |
candiess:
<button type="submit" ??? input type submit znam, ale button. A kdyz by slo o input, pak tam onclick nema, co delat. nemeja Pokud nebude mít zaplej PHP, tak stejně budeš muset to řešit PHP. :) candiess: <form method="GET"> <label><input type="checkbox" name="zn[]" value="lg" /> Skladem</label><br> <label><input type="checkbox" name="zn[]" value="sony" /> Akční nabídka</label><br> <label><input type="checkbox" name="zn[]" value="bosch" /> Novinky</label><br> <label><input type="checkbox" name="zn[]" value="samsung" /> Výprodej</label><br> <input type=submit> </form> IE9 file:///C:/x/h-form.htm?zn%5B%5D=sony&zn%5B%5D=samsung Jestli to chces propojit, tak onsubmit="return funkce(this)" a script <script> function funkce(form) { inp = form['zn[]'] zn = [] for (i=0;i<inp.length;i++) { if (inp[i].checked) { zn[zn.length] = inp[i].value; } } zn = zn.join(','); // jiny_form.zn.value = zn // jiny_form.submit(); alert('zn = ' + zn); return false; // tento form odeslat False } </script> |
||
Chamurappi Profil |
#9 · Zasláno: 3. 5. 2012, 15:30:07
Reaguji na peta:
„??? input type submit znam, ale button.“ Tak se dovzdělej. Vyhledávače znáš, ne? Reaguji na Prknyho: K čemu ta upravená adresa bude? „rad bych znal ty názvy proměnných“ Ty se přeci normálně předávají. Akorát PHP ti je nezpřístupňuje, když se jmenují všechny stejně a nemají hranaté závorky. Uvedený kód se zn[] by měl fungovat.
|
||
peta Profil |
#10 · Zasláno: 3. 5. 2012, 15:59:34
Formuláře » button
Aha, ok. Zajimave. Nejspis jsem to u buttonu nenastavoval, pripadne ho vubec nepouzivam, protoze se zobrazoval odlisne tusim v IE nez bezny inptut button. |
||
Prkny Profil |
#11 · Zasláno: 3. 5. 2012, 18:26:53
Reaguji na Chamurappiho:
K čemu ta upravená adresa bude? Říkal jsem si, že to bude vypadat lépe v té url adrese, ale asi je to každému uživateli (návštěvníkovi) jedno.. Ty se přeci normálně předávají. Akorát PHP ti je nezpřístupňuje, když se jmenují všechny stejně a nemají hranaté závorky. Uvedený kód se zn[] by měl fungovat. Ano je to tak v php jsem je dal do kupy implode(',', $_GET[zn]); |
||
Časová prodleva: 11 let
|
0