Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Problemy z funkcjami i tablicami
The Night Shadow
post
Post #1





Grupa: Zarejestrowani
Postów: 495
Pomógł: 2
Dołączył: 5.02.2006
Skąd: Wrocław

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


Mam funkcję taką:

  1. <?php
  2. function option($rodzaj_opcji, $nazwa_opcji, $zmienna_opcji, $tresci_opcji)
  3. {
  4. }
  5. ?>


Zmienna $opcje przyjmuje za swą wartość tablicę:

  1. <?php
  2. $opcje = array(
  3. 1 => 'loginu',
  4. 2 => 'adresu e-mail',
  5. 3 => 'numeru Gadu-Gadu',
  6. 4 => 'nicku Tlen',
  7. 5 => 'rangi',
  8. 6 => 'statusu',
  9. 7 => 'daty założenia/aktywacji konta',
  10. 8 => 'daty ostatniego logowania',
  11. 9 => 'adresu IP',
  12. );
  13. ?>


Dlaczego jeśli za $tresci_opcji w wywoływaniu funkcji wpiszę:

  1. <?php
  2. $opcje
  3. ?>


Nie działa pętla wewnątrz funkcji wyglądająca tak:

  1. <?php
  2. $zwroc .= '<select name="'.$nazwa_opcji.'">';
  3. $i=1;
  4. foreach($tresci_opcji as $nazwa)
  5. {
  6. $zwroc .= '<option "'; 
  7. if ($zmienna_opcji==$nazwa['$i']) 
  8. { 
  9. $zwroc .= 'selected="selected"'; 
  10. } 
  11. $zwroc .= '>"'.$nazwa['$i'].'"</option>';
  12. $i++;
  13. }
  14. $zwroc .= '</select>';
  15. return $zwroc;
  16. ?>


?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kuziu
post
Post #2





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

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


Używasz czasem echo do wyszukiwania błędów ?

Po 1 wstaw sobie echo('a'); po 5 linii ... co zauważysz ... nic więc:
  1. <?php
  2. if ($rodzaj==1)
  3. ?>

Nie działa

Wtedy się zastanawiasz dlaczego i patrzysz że jako parametr wchodzi $rodzaj_opcji i już znasz odpowiedź.

Teraz wszedzie wchodzi dobrze...ale nadal nic nie widać dlaczego ?

Bo masz return $zwroc a nie echo więc albo echo($zwroc) albo

  1. <?php
  2. echo(option('1', 'wedlug', $sortowane_wedlug, $opcje));
  3. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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: 13.10.2025 - 00:34