Autor Zpráva
NevimNeznamPtamSe
Profil
Zdravím Vás, mám toho už na dnešek asi moc, ale nemůžu se dobrat k vyřešení jednoho problému.
fakta:
- web má strukturu
index.php?page=...
(bez koncovky *.php), příčemž v index je hlavní page, kde se rovněž natakuje fce hlavicky a patičky a je tu i inicializace hlavních proměnch ($id, $akce, $page, ...)

- vypisuji z databáze jednotlivé řádky podle roku asi takto
$d = mysql_query("SELECT * FROM deska $between ORDER BY vlozeno DESC;", $con);
, kde \$between reprezentuje specifické dotazy na dané období (= daný rok)

problém:
-
echo "<br /><br />zobrazit soubory:<select onchange=".'"document.location.href=\'deska?r=\'+this.value">'.'<option value="0">vsechny</option>';
for($i=2007; $i <= date("Y"); $i++)
{
    echo '<option value="'. $i .'"';
    if($i == $_GET['r']) echo ' selected';
    echo '>pro rok '. $i ."</option>";    
}
echo "</select>";

kod vypisuje to co potřebuji, ale při přepnutí na "ten" rok se mi parametr "r" nedostane do url ve tvaru index.php?page=deska?r=2010. Když ho tam nastavim natvrdo v url nápsáním přímo, nevypíšou se zase data na stránce :(
Joker
Profil
NevimNeznamPtamSe:
ve tvaru index.php?page=deska?r=2010
Takhle to je špatně. Otazník odděluje jen parametry od adresy, parametry mezi sebou se oddělují ampersandem (&): index.php?page=deska&r=2010

Jinak když se nastavuje document.location.href, tak tam samozřejmě musejí být uvedené všechny parametry, ne jen ten co se mění.
NevimNeznamPtamSe
Profil
Joker:
- „ve tvaru index.php?page=deska?r=2010“ - máš samozřejmě pravdu. Nechápu jak si toho mphl nevšimnout. Rázem mi zmizelo i nedefinování "r", takže 2 mouchy jednou ranou ;)

- „document.location.href, tak tam samozřejmě musejí být uvedené všechny parametry, ne jen ten co se mění“ - moc tyhle selekty nesetkávám, jak si to myslel s document.location.href
	echo "<br /><br />zobrazit soubory:<select onchange=".'"document.location.href=\'index.php?page=deska&amp;r=\'+this.value">'.'<option value="0">vsechny</option>';

dál to pokračuje oním
for
- viz min přízpěvek a něco málo definování proměných a jejich kontrol v horní části dokumentu a výpisem z db v dolní části dokumentu
Joker
Profil
NevimNeznamPtamSe:
A jak to souvisí?
Já říkám, že:
1. Otazník se používá jen před prvním parametrem a mezi parametry pak ampersand.
2. Přechod na nějakou adresu odkazem (vč. přes JS a location) musí vyjmenovat všechny patametry, tj. ne jenom ?r=(hodnota), ale ?page=deska&r=(hodnota).
NevimNeznamPtamSe
Profil
Joker:
2/ jo v poho, to tak mám už od začátku.
Díky za rady ... a můžete zavřít téma nebo označit jako splněné. Nevidím to tu
Zdar

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:

0