Autor | Zpráva | ||
---|---|---|---|
forest Profil * |
#1 · Zasláno: 10. 10. 2013, 13:33:34
Ahoj,
mám tento kód: $menu = ARRAY('news.php' => 'News', 'schedule_matches.php&id_competition=1' => 'Schedule Matches - Group A', 'schedule_matches.php&id_competition=2' => 'Schedule Matches - Group B', 'reg_teams_tasks.php' => 'Registered Teams - Tasks'); foreach($menu as $file => $name) { IF($_GET["section"]== $file) { //Zobrazuje aktivní link echo "<a href='admin.php?section=$file' id='root_menu_active'>$name</a>"; } ELSE { echo "<a href='admin.php?section=$file'>$name</a>"; } } Zvýraznění zvoleného odkazu mi funguje v případě odkazů: News a Registered team - task u Schedule Matches samozřejmě nefunguje protože $_GET["section"] se nerovná $file. Jak by se dal tento kód upravit aby to fungovalo u všech odkazů. Díky |
||
Tori Profil |
#2 · Zasláno: 10. 10. 2013, 13:41:13
Třeba tak, že to celé zabalíte do funkce, která bude jako parametr dostávat nějaký identifikátor aktuální stránky (tj. některý klíč z pole
$menu ). Tu funkci byste potom volal ne v nějakém includu, ale v těch jednotlivých skriptech (a tím pádem můžete v jednom skriptu předávat funkci basename(__FILE__) a v jiném třeba basename(__FILE__)."&id_competition=".$_GET['id_competition'] ).
|
||
forest Profil * |
#3 · Zasláno: 10. 10. 2013, 15:37:53 · Upravil/a: forest
Mohl bych Vás poprosit o ukázku.
Teď mě ještě napadá zdali by se to pole nedalo udělat tří hodnotové a pak porovnávat proměnné např: <pre>$basefile = schedule_matches.php</pre> <pre>$subvalue = id_competition=1</pre> A pak nějak podmínka zdali se rovná <pre>$basefile == $_GET["section"]</pre> a zdali se ještě rovná s $subvalue, akorát to neumím napsat.. |
||
peta Profil |
1. mas tam &, nemas tam ?
admin.php?section schedule_matches.php&id_competition 3. Neni jasne, jake hodnoty ziskavas z getu pro ty nefungujici odkazy, $_GET["section"] . To bys musel napsat, co vypise echo $_GET["section"] , pro stav, kdy je to ok a stav, kdy to ok neni
--- Dalo array( array('a','b','c') ) |
||
Tori Profil |
#5 · Zasláno: 11. 10. 2013, 17:33:26
forest:
„Teď mě ještě napadá zdali by se to pole nedalo udělat tří hodnotové [...] A pak nějak podmínka zdali se rovná $basefile == $_GET["section"] a zdali se ještě rovná s $subvalue , akorát to neumím napsat..“
IMHO je lepší používat pro rozlišení aktivní stránky jen jeden řetězec. Teď ho můžete skládat z hodnoty jednoho či více parametrů z GET, ale třeba za půl roku přejdete na SEO URL (/news, /schedule-matches/group-a, /schedule-matches/group-b, ...) a musel byste přepisovat celou logiku té funkce. |
||
Časová prodleva: 12 let
|
0