sql >> Database >  >> RDS >> Mysql

Genereer PHP-array uit MySQL met sleutelwaarde uit kolom id

Dit is te doen als een associatieve array.

Het enige wat je hoeft te doen is veranderen

$array[] = $row

naar

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

U moet ervoor zorgen dat de ID kolom in uw database is uniek, zodat de associatieve array geen sleutels overschrijft (in dat geval blijft alleen het laatste record met dubbele ID's over)

BEWERKEN (19-11-2015)

Ook over je 'mysql-loop' - het is gewoon een gewone PHP while lus die door records loopt die zijn opgegeven door mysql_* of mysqli_* functies. U loopt door het geretourneerde resultaat van het uitvoeren van een sql-instructie in de database die alleen rijen op een bepaalde manier voor u ophaalt en opmaakt.

MySQL en MySQLi zijn twee verschillende dingen, maar de SQL die ze gebruiken is niet anders (behalve misschien voorbereide instructies?). SQL leren is wat je gaat doen en om het uit te voeren gebruik je mysqli_* vanaf nu sinds mysql_* functies zijn verouderd

Ik wilde je alleen op die dingen wijzen om enige verwarring weg te nemen die je misschien al hebt of in de toekomst zult hebben. :)

Lees voor meer informatie over mysqli de php.net-handleiding , het is allemaal een beetje ingewikkeld als je net begint, maar dat is prima - begrijp wat je kunt en werk om te begrijpen wat je niet kunt.

BEWERK 2 (19-11-2015)

de indexen in uw $row array zijn hoofdlettergevoelig dus ID en id zijn iets heel anders. één zal optellen tot een undefined index fout.

Ik zag in je output dat de id sleutel is eigenlijk kleine letters dus ik zou proberen dat te veranderen.

Veel succes!



  1. Kan ik een unieke TIMESTAMP krijgen voor elk record in MySQL?

  2. SSHTunnelForwarder gebruiken om via SSH verbinding te maken met een MySQL-database

  3. Opgeslagen procedure verwijderen in MySQL

  4. Hoe werkt SQL-injection en hoe bescherm ik me ertegen