To lze provést jako asociativní pole.
Jediné, co musíte udělat, je změnit
$array[] = $row
do
$array[$row['ID']] = $row
Musíte se ujistit, že ID
sloupec ve vaší databázi je jedinečný, takže asociativní pole nepřepisuje klíče (v takovém případě by zůstal pouze poslední záznam s duplicitními ID)
UPRAVIT (19. 11. 2015)
Také o vaší 'mysql smyčce' - je to jen běžný PHP while
smyčka, která prochází záznamy dané buď mysql_*
nebo mysqli_*
funkcí. Procházíte vráceným výsledkem z provádění příkazu sql v databázi, který za vás pouze načítá a formátuje řádky určitým způsobem.
MySQL a MySQLi jsou dvě různé věci, ale SQL, které používají, se neliší (možná s výjimkou připravených příkazů?). Naučit se SQL je to, co budete dělat a k jeho provedení budete používat mysqli_*
od nynějška od mysql_*
funkce jsou zastaralé
Jen jsem chtěl poukázat na ty věci, abych vyjasnil nějaký zmatek, který už možná máte nebo budete mít v budoucnu. :)
Pro více informací o mysqli si přečtěte příručku php.net , je to všechno trochu složité, pokud právě začínáte, ale to je v pořádku - pochopte, co můžete, a pracujte na tom, abyste pochopili, co nemůžete.
EDITACE 2 (19. 11. 2015)
indexy ve vašem $row
pole rozlišují malá a velká písmena
takže ID
a id
jsou něco úplně jiného. jeden přidá až undefined index
chyba.
Ve vašem výstupu jsem si všiml, že id
klíč je ve skutečnosti malá takže bych to zkusil změnit.
Hodně štěstí!