Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Kolejność deklarowania funkcji, ustawiania zmiennych oraz wykonywania funkcij
Maxie
post
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 19.10.2011

Ostrzeżenie: (0%)
-----


Witam. Mam mały problem z kolejnością działania w php związaną z funkcjami. Problem wygląda następująco.
  1. Deklarowanie funkcij, która korzysta z $user w formie array(). Tak wylgąda ta funkcja:
    1. function permission($perm){
    2. $range = $user['range'];
    3. $id = $user['id'];
    4. echo $user['id'].' ; '.$user['login'].' ; '.$user['range'];
    5. $record = mysql_query("SELECT * FROM `UserRangePerm` WHERE `RangeID` = '".$range."'AND `Title` = '".$perm."' ");
    6. $recordtwo = mysql_query("SELECT * FROM `UserIndividualPerm` WHERE `UserID` = '".$id."' AND `Title` = '".$perm."' ");
    7. if(mysql_num_rows($record) == 0 and mysql_num_rows($recordtwo) == 0){
    8. return false;
    9. }else{
    10. return true;
    11. }
    12. }

    Za każdym razem zwraca echo ' ; ; ' oraz false.
  2. Ustawianie zmiennej $user (rzeczjasna w array()). Tak to wygląda:
    1. if($_SESSION['logged'] == true){
    2. $record = mysql_query("SELECT * FROM `User` WHERE `ID` = '".$_SESSION['ID']."' ");
    3. $record = mysql_fetch_assoc($record);
    4. $user = array();
    5. $user['id'] = $_SESSION['ID'];
    6. $user['login'] = $record['Nick'];
    7. $user['range'] = $record['RangeID'];
    8. global $user;
    9. }
  3. Wykonanie wcześniej wspomnianej funkcji razem z testem czy zmienna $user sięga w to miejsce:
    1. permission('page1');
    2. echo '<br>';
    3. echo $user['id'].' ; '.$user['login'].' ; '.$user['range'];

Próbowałem zamienić 1 i 2 by najpierw było ustalanie zmiennej a następnie deklarowanie funkcji, ale to także nie działa. Za każdym razem mój 'test' funkcji zwraca puste zmienne a test zmiennych zwraca odpowiednie zmienne.
Z góry dziękuję za pomoc. Pozdrawiam, Maxie.

Ten post edytował Maxie 28.03.2013, 17:42:48
Go to the top of the page
+Quote Post
koxu1996
post
Post #2





Grupa: Zarejestrowani
Postów: 139
Pomógł: 3
Dołączył: 5.06.2011

Ostrzeżenie: (0%)
-----


Wstaw do funkcji var_dump żeby zobaczyć co zwraca mysql
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 07:24