Autor | Zpráva | ||
---|---|---|---|
czechiaa Profil |
#1 · Zasláno: 9. 8. 2012, 17:46:29
Zdravím,
dělám si webové stránky, s vlastním systémem a nyní se mi naskytl problém. Když je člověk příhlášený a chce něco postnout do diskuse, tak se s tím zapíší i všechny údaje, ale mám problém v tom, že hodnosti uživatel jsou v číslem (od jedné do devíti) a při zapisování to zapíše číslo a já bych chtěl spíše název přímo té hodnosti (Administrátor, moderátor, atp.) Potřeboval bych, aby to vypadalo tak, že bych hodnotu mohl poté jednoduše používat .. abych jakože někde napsal <? echo($prava); ?> a bylo to.
Hodnost se mi vypisuje pod $session->userlevel Poradí te mi někdo, už pár dní si s tím nevím rady. Předem děkuji za reakce |
||
Someone Profil |
#2 · Zasláno: 9. 8. 2012, 17:58:34
$hodnosti = array(1=>"Hodnost lvl 1","Hodnost lvl 2","Hodnost lvl 3"); //atd echo $hodnosti[$session->userlevel]; |
||
czechiaa Profil |
#3 · Zasláno: 9. 8. 2012, 18:15:39
Ano, funguje, naprosto skvělé.
Děkuju ;) |
||
abc Profil |
Osobně to řeším nějak takto:
<?php function userLevelName($level){ $userLevels = array( 0 => 'nejnižší user', 1 => 'o trošku vyšší user', ...., 9 => 'admin', ) return $userLevels[$level]; } |
||
czechiaa Profil |
#5 · Zasláno: 9. 8. 2012, 18:46:33
A jak bych to dokázal někde ve stránce vypsat ?
(pomocí echa) |
||
abc Profil |
třeba:
<?php echo userLevelName($session->userlevel); ?> Prostě té fci předáš parametrem level a ona ti vrátí název. V podstatě to stejné jako psal Someone pouze obalené ve fci |
||
Joker Profil |
#7 · Zasláno: 9. 8. 2012, 19:25:53
abc:
Přijde mi trochu nevýhoda, že to pole je definované jen uvnitř té funkce a navíc se při každém volání definuje znovu. |
||
Jan Tvrdík Profil |
#8 · Zasláno: 9. 8. 2012, 20:04:29
Joker:
„navíc se při každém volání definuje znovu“ To lze vyřešit přidáním klíčového slova static .
function userLevelName($level){ static $userLevels = array( 0 => 'nejnižší user', 1 => 'o trošku vyšší user', ...., 9 => 'admin', ); return $userLevels[$level]; } |
||
Časová prodleva: 12 let
|
0