Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> przekazanie zmiennej, bardzo dziwna sprawa
banpl
post
Post #1





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 2.11.2005
Skąd: Radomsko

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


witam, otóż mam taki problem, mianowicie

napisałem sobie funkcję która w zaleznosci jaka strona jest otwarta pokazuje mi opcje do niej (new, edit, delete)

i teraz taki psikus jest ze w pliku mam zmienna

  1. <?php
  2. $sciezka = 'index.php?option=menu&';
  3. ?>


i funcje
  1. <?php
  2. function opcja_(){
  3.  
  4. global $option;
  5. global $sciezka;
  6. //$sciezka = 'index.php?option=menu&';
  7.  
  8. $NEW = array("Nowy", "new", "new=1", $sciezka);
  9. $EDIT = array("Edytuj", "edit_", "edit=1", $sciezka);
  10. $DELETE = array("Usuń", "delete", "delete=1", $sciezka);
  11.  
  12. $MENU[] = array($NEW, $EDIT, $DELETE);
  13.  
  14. $PAGE = array('menu' => $MENU);
  15.  
  16. if(isset($option)){
  17. echo '<table border="0" cellspacing="0" cellpadding="0" width="40%">';
  18. echo '<tr>';
  19. foreach($PAGE as $page => $OPTION){
  20. foreach($OPTION as $NAWA_OPCJA){
  21. foreach($NAWA_OPCJA as $OPCJA){
  22. if($option == $page){
  23. echo '<td align="center" valign="middle"><a href='.$OPCJA[3].''.$OPCJA[2].'><img border=0 src=gfx/'.$OPCJA[1].'.png width=32 height=32 style=float: left><br>'.$OPCJA[0].'</font></a></td>';
  24. }
  25. }
  26. }
  27. }
  28. echo '</tr></table>';
  29. }
  30. /*
  31. echo '<td align="center" valign="middle"><a href=index.php?new><img border=0 src=gfx/add.png width=32 height=32 style=float: left><br>Nowy</font></a></td>';
  32. echo '<td align="center" valign="middle"><a href=index.php?edit><img border=0 src=gfx/edit_.png width=32 height=32 style=float: left><br>Edytuj</font></a></td>';
  33. echo '<td align="center" valign="middle"><a href=index.php?delete><img border=0 src=gfx/delete.png width=32 height=32 style=float: left><br>Usuń</font></a></td>';
  34. */
  35.  
  36.  
  37.  
  38. }
  39. ?>


teraz w miejscu gdzie jest global $sciezka powinno sibie pobrac jej wartosc a nastepnie umiescic w tablicy, ale tak sie nie dzieje, tzn link prawidlowo powinien wygladac
index.php?option=menu&new=1
a wyglada tak
new=1
dopiero jak wstawie w funkcje ta zmienna $sciezka i przypisze jej wartosc to funkcja dziala poprawnie, pytanie dlaczego tak sie dzieje questionmark.gif?


--------------------
Warsztat :: Windows7 / Ubuntu | PHP 5 | MySQL 5 | Eclipse / NetBeans | Opera / Firefox
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
hwao
post
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




zrob poprostu tak, globale sa do niczego!

  1. <?php
  2. function opcja_( $sciezka ){
  3. global $option;
  4. // ....
  5.  
  6. ?>


  1. <?php
  2. opcja_( index.php?option=menu&' )
  3. ?>
Go to the top of the page
+Quote Post
banpl
post
Post #3





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 2.11.2005
Skąd: Radomsko

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


ale jest jeszcze jedno ale, bo funkcja jest w pliku config, jest uzyta w pliku index, a wartosc zmiennej $sciezka jest w pliku menu


--------------------
Warsztat :: Windows7 / Ubuntu | PHP 5 | MySQL 5 | Eclipse / NetBeans | Opera / Firefox
Go to the top of the page
+Quote Post
wrzasq
post
Post #4





Grupa: Zarejestrowani
Postów: 206
Pomógł: 18
Dołączył: 6.03.2006
Skąd: Szczecin

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


@banpl: dlatego uzywaj sciezki jako argumentu funkcji - raz zdefiniowana funkcje mozesz wykorzystywac wszedzie i dlatego bedziesz przekazywal sciezke dokladnie ta, ktora chcesz - moze do czasu wywolania funkcji globalna zmienna jest jeszcze nie zainicjowana, albo "cos" zmienilo jej wartosc?

Ten post edytował wrzasq 19.03.2006, 18:25:31


--------------------
Go to the top of the page
+Quote Post
banpl
post
Post #5





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 2.11.2005
Skąd: Radomsko

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


juz sobie poradzilem, napisalem osabna fukcje ktora bobiera mi sciezke i wszystko gra smile.gif
ale i tak dzieki za podpowiedzi smile.gif


--------------------
Warsztat :: Windows7 / Ubuntu | PHP 5 | MySQL 5 | Eclipse / NetBeans | Opera / Firefox
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 - 15:45