PHP und MySQL

Hi PHP’ler,

ich habe ein kleines Problem.
Ich möchte eine Funktion schreiben, die einen mysql_fetch_row in ein array schreibt. Den Array will ich dann über Indizes abfragen. Ich habe jedoch ein Problem. Ich weis nicht wie groß der Array jeweils sein muß.

Es soll ungefähr so aussehen:
while ( $array = mysql_fetch_row($mysqlCursor)
{
}
Ich weis jedoch nicht, wie ich den Array vorher erzeugen muß. So bekomme ich immer eine Fehlermeldung.
Kann mir jemand helfen?

Danke, und Gruß
Karsten

Es soll ungefähr so aussehen:
while ( $array = mysql_fetch_row($mysqlCursor)
{
}
Ich weis jedoch nicht, wie ich den Array vorher erzeugen muß.
So bekomme ich immer eine Fehlermeldung.

Du musst das Array nicht vorher erzeugen… was ist das denn für ein Fehler den du kriegst?
Und warum nimmst du nicht mysql_fetch_array(), ist wesentlich komfortabler über die Feldnamen als über Indizes zuzugreifen.

MfG Bruno

Hallo Karsten,

ich habe ein kleines Problem.
Ich möchte eine Funktion schreiben, die einen mysql_fetch_row
in ein array schreibt. Den Array will ich dann über Indizes
abfragen. Ich habe jedoch ein Problem. Ich weis nicht wie groß
der Array jeweils sein muß.

Über die Funktion mysql_fetch_row wird der Array automatisch so groß definiert, wie er sein muß - Du mußt den Array dann nur noch abfragen. Beispiel:

$query = mysql\_query ("SELECT \* FROM table");
while ($row = mysql\_fetch\_row ($query) {
 $row\_size = sizeof ($row);
 for ($i = 0; $i 

Über die Funktion sizeof() kannst Du herausfinden, wie groß der Array geworden ist und kannst Dir z.B. mit einer einfachen for-Schleife die Ergebnisse herausziehen, wie ich es in obigem Beispiel gemacht habe.

Eleganter ist natürlich die Verwendung von mysql\_fetch\_array, weil Du die Array-Inhalte mit dem Spaltennamen ansprechen kannst.

Alles klar?

Gruß,

Klaus-Ulrich Merkle