sql >> Database teknologi >  >> RDS >> Mysql

Generer PHP-array fra MySQL med nøgleværdi fra id-kolonnen

Dette kan gøres som et associativt array.

Alt du skal gøre er at ændre

$array[] = $row

til

$array[$row['ID']] = $row

Du skal sikre dig, at ID kolonnen i din database er unik, så det associative array ikke overskriver nøgler (i hvilket tilfælde kun den sidste post med duplikat-id'er ville forblive)

REDIGERING (19-11-2015)

Også om din 'mysql loop' - det er bare en almindelig PHP while sløjfe, der går gennem poster givet af enten mysql_* eller mysqli_* funktioner. Du går gennem det returnerede resultat fra at udføre en sql-sætning på databasen, som bare henter og formaterer rækker for dig på en bestemt måde.

MySQL og MySQLi er to forskellige ting, men den SQL, de bruger, er ikke anderledes (undtagen måske forberedte sætninger?). At lære SQL er, hvad du skal gøre, og for at udføre det, skal du bruge mysqli_* fra nu af siden mysql_* funktioner er udfasede

Jeg ville bare påpege disse ting for at fjerne en vis forvirring, du måske allerede har eller vil have i fremtiden. :)

For mere læsning om mysqli, læs php.net-manualen , det hele er lidt komplekst, hvis du lige er begyndt, men det er fint - forstå, hvad du kan, og arbejd på at forstå, hvad du ikke kan.

EDIT 2 (19-11-2015)

indekserne i din $row array er store bogstaver altså ID og id er noget helt andet. en vil tilføje op til et undefined index fejl.

Jeg har bemærket i dit output, at id nøglen er faktisk små bogstaver så det ville jeg prøve at ændre til.

Held og lykke!



  1. Kan ikke få MySQL-kildeforespørgsel til at virke ved hjælp af Python mysqldb-modul

  2. Hvordan vælger man fra objekttypekolonne i Oracle 11g?

  3. Klasse ikke fundet indlæser JDBC org.postgresql.Driver

  4. Hvordan laver man et felt NULL ved hjælp af MySQL GUI Tools?