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%)
-----


Wewnątrz foreach zmiennej $nazwa powinieneś używać już bez kluczy/indexów przecież forach wyciąga jedną wartość z danej komórki tablicy i przypisuje ją do zmiennej która w tym wypadku jest tekstową więc $nazwa nie jest tablicą.

Linia 11
  1. <?php
  2. $zwroc .= '>"' . $nazwa . '"</option>';
  3. ?>


W 7 masz ten sam błąd.

Dodatkowo nawet gdyby to była tablica to przecież zmienne w apostrofach nie są parsowane więc $nazwa['$i'] nie da żadanego efektu a jedynie $nazwa[$i];

Pozdrawiam

Ten post edytował Kuziu 19.03.2006, 17:09:52
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 2.10.2025 - 18:40