PHP array en Mysql

Status
Niet open voor verdere reacties.

ManuNeko

Gebruiker
Lid geworden
24 jun 2009
Berichten
110
Ik wil een table uit mysql inlezen en die in een array steken. Ik had eigenlijk gedacht dat dat niet zo moeilijk zou zijn, maar het is mij nog steeds niet gelukt.
Dit is hoe ik het heb geprobeerd:
Code:
	$result = mysql_query("Select ID, Naam From genre Order By Naam");
	while ($row = mysql_fetch_array($result,MYSQL_ASSOC))
	    {
		$this->arrGenre[] = $row;
	    }

Het resultaat daarvan is echter dit:
Code:
Array
(
    [0] => Array
        (
            [ID] => 1
            [Naam] => Actie
        )

    [1] => Array
        (
            [ID] => 2
            [Naam] => Anime
        )
...
)

terwijl de bedoeling is dat mijn array er zo uit ziet:
Code:
Array
(
    [1] => Actie
    [2] => Anime
    [3] => Cabaret
    [4] => Documentaire
    [5] => Drama
    [6] => Familiefilm
    [7] => Horror
    [8] => Kinderfilm
    [9] => Kinderserie
    [10] => Komedie
    [11] => Sci-Fi
    [12] => Thriller
    [13] => Biografie
)
 
Je haalt ze al als array uit de database want je gebruikt "mysql_fetch_array" :eek:

Wil je jouw gewenste resultaat dan kun je dit doen:
PHP:
while ($row = mysql_fetch_array($result,MYSQL_ASSOC))
{
    $this->arrGenre[$row['ID']] = $row['Naam'];
}

Of als de key niet gelijk hoeft te zijn aan de ID, is dit nog efficienter:
PHP:
$result = mysql_query("SELECT Naam FROM genre ORDER BY Naam");
while ($row = mysql_fetch_array($result,MYSQL_ASSOC))
{
    $this->arrGenre[] = $row['Naam'];
}
of dit, al betwijfel ik of dat werkt
PHP:
$result = mysql_query("SELECT Naam FROM genre ORDER BY Naam");
$this->arrGenre = mysql_fetch_array($result);

Let wel; mysql_*-functies worden afgeraden nog te gebruiken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan