Autor Zpráva
zork
Profil
Celkom si nie som isty preco to nefunguje, ale dufam ze mi tu niekto pomoze.
V skratke co potrebujem:
Z jednej roletky si vyberiem rok a z druhej roletky druh akcie, odosielat sa bude po zmene (onchange) a ked to prejde cez podmienku tak sa mi zobrazi co potrebujem, podla toho co som si zvolil.

Budem vdacny za kazdu odpoved...


<form action="galeria.php" method="get" name="gallery">
<select size="1" name="rok" onchange="document.gallery.submit()">
<option value="">Vyverte rok:</option>
<option value="1">Rok: 2011</option>
<option value="2">Rok: 2012</option>
</select>

<select size="1" name="akcia" onchange="document.gallery.submit()">
<option value="">Vyverte akciu:</option>
<option value="1">Opekacka</option>
<option value="2">Kempovanie</option>
</select>


<?php
if ($rok==1 && $akcia==1) {echo "Opekacka z roku 2011";}
elseif ($rok==2 && $akcia==1) {echo "Opekacka z roku 2012";}
elseif ($rok==1 && $akcia==2) {echo "Kempovanie z roku 2011";}
elseif ($rok==2 && $akcia==1) {echo "Kempovanie z roku 2012";}
else {echo "Vyber rok a akciu";}
?>
</form>
peta
Profil
Oba selecty ale odesilas, nevidim tam kod, ktery jim prednastavuje prichozi hodnotu, takze se pri odeslani selecty nuluji, ale php pracuje s udaji, ktere jsi poslal. Coz je bohuzel vysledek bud selectu rok nebo selectu akcia. A to za predpokladu, ze mas zapnute globalni promenne, jinak musis napsat:
<?php
$rok = $_GET['rok'];
$akcia = $_GET['akcia'];
//... tvuj php kod ...
?>

Schvalne si zkus provest echo.
<?php
$rok = $_GET['rok'];
$akcia = $_GET['akcia'];
echo "rok = $rok<br>";
echo "akcia = $akcia<br>";
?>
zork
Profil
Viem ze po odoslani sa mi ten prvy nuluje, ale netusim co s tym aby som to vyriesil. Skusal som to poslednych par dni prerabat ale bez vysledku.
Someone
Profil
Při výběru položky ze SELECTu se odešle formulář... Jak chceš aby uživatel vybral druhý, když se po výběru prvního formulář odešle?
peta
Profil
zork: Je to jednoduche.
Bud teda formular odesilat nebudes a budes pomoci js prepisovat druhy select.
Nebo to odesilat budes a zvolenou hodnotu prvniho a druhy select budes vypisovat pomoci php.

$data = array(
array(1,'Opekacka'),
array(2,'Opekacka')
);
$sel = '';
foreach ($data as $row)
{
list($val,$text) = $row;
$sel.= ($rok==$val) ? '<option value="'.$val.'" selected="selected">'.$text.'</option>' :  '<option value="'.$val.'">'.$text.'</option>'
}
echo $sel;
Nerucim za moznou chybu...
zork
Profil
dakujem, nakoniec sa mi to podarilo vcera spravit pomocou JS, sice som sa s tym tyzden potrapil ale je to hotovo, a pri tom to bolo take jednoduche :)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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