Fabian St.: Array an Funktion übergeben

Beitrag lesen

Hi!

aus einer Datenbankabfrage muss ich einige zusammengehörende Zeilen sammeln und an eine Funktion übergeben. Kann ich mich darauf verlassen, dass auch die Spaltennamen mit übergeben werden?

Übergebe der Funktion mysql_fetch_array als zweiten Parameter die PHP Konstante MYSQL_ASSOC. Dadurch liefert mysql_fetch_array ein assoziatives Array mit den Spaltennamen als Key aus (und nicht wie als Standardeinstellung sowohl ein assoziatives als auch numerisch indiziertes Array --> MYSQL_BOTH).

Darüber hinaus befinden sich noch ein paar Fehler im Code:

  

>   $arr_besucher = array();  

     while($row_besucher = mysql_fetch_array($result_besucher, MYSQL_ASSOC)) {  
         $arr_besucher[] = $row_besucher;  

>   }  
>   druckBesuchergruppe($arr_besucher);  
>   
> function druckBesuchergruppe($arr_besucher) {  

     $row_besucher = array(); // nicht notwendig, aber vom Stil her besser  

>   for ( $i=0; $i<count($arr_besucher); $i++ ) { // for sollte durch eine foreach-Schleife ersetzt werden  
>     $row_besucher = $arr_besucher[$i];  
>     echo $row_besucher['name']."<br>";  
>   }  
> }  

Darüber hinaus solltest du u.U. auch einen Blick auf die PHP-Funktion mysql_fetch_assoc() werfen, damit ersparst du dir den Weg mit MYSQL_ASSOC und mysql_fetch_array().

Grüße,
Fabian St.

--
---------------------
fabi@erde ~# whatis spam
spam: nothing appropriate
---------------------
Selfcode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:( ss:) de:> js:| ch:? mo:) zu:)