Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Widzialność zmiennych przekazywanych przez funkcję.
miedzna
post
Post #1





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

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


Mam taką funkcję:

  1. <?php
  2. function NazwaFunkcji($do){
  3.  
  4.    $query = mysql_query("
  5.    SELECT tp.id, tp.name, upper(r.jednostka) AS skadDuze, r.jednostka AS skadMale
  6.    FROM tp, raporty r, tp_opis o
  7.    WHERE r.j_id = " . $do . "
  8.    AND r.raport_id = tp.id
  9.    AND o.opis_id = tp.id
  10.    AND UNIX_TIMESTAMP( o.start ) <= UNIX_TIMESTAMP( DATE( NOW( ) ) )
  11.    AND UNIX_TIMESTAMP( o.stop ) >= UNIX_TIMESTAMP( DATE( NOW( ) ) )
  12.    ORDER BY tp.name, tp.id
  13.    ");
  14.  
  15.    while($row = mysql_fetch_array($query)){
  16.  
  17.        $id = array($row["id"]);
  18.        $name = array($row["name"]);
  19.  
  20.        $ArrayRaportyF_doJednostki = array_combine($id, $name);
  21.    }
  22. }
  23. ?>


która zwraca mi array $ArrayRaportyF_doJednostki. Teraz w innym pliku dołączam NazwaFunkcji($do) i daję pętlę, która powinna operować na wynikach tej funkcji:

  1. <?php
  2. foreach ($ArrayRaportyF_doJednostki as $id => $name){
  3. echo "Klucz: $id; Wartość: $name<br>\n";
  4. }
  5. ?>


i dostaję komunikat o błędzie: Warning: Invalid argument supplied for foreach() in ...

pętla nie widzi tabeli zwracanej przez funkcję. A jeżeli pętlę umieszczę wewnątrz funkcji, to działa.

Ten post edytował miedzna 19.02.2009, 13:10:02
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
artur_dziocha
post
Post #2





Grupa: Zarejestrowani
Postów: 320
Pomógł: 53
Dołączył: 18.09.2007
Skąd: Radom

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


  1. <?php
  2. $id = array();
  3. $name = $array();
  4. while($row = mysql_fetch_array($query)){
  5. $id[] = $row['id'];
  6. $name[] = $row['name'];  
  7. }
  8. ArrayRaportyF_doJednostki = array_combine($id, $name);
  9. return ArrayRaportyF_doJednostki;
  10. ?>


Ten post edytował artur_dziocha 19.02.2009, 13:15:37
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: 17.10.2025 - 21:33