Denk na over wat uw code doet. Elke lus herdefinieert u de $query
variabele, zodat wanneer je aan het einde komt, de uiteindelijke waarde van $query
zal de laatste zijn die je hebt gecontroleerd.
Als je nog steeds dezelfde luslogica wilt gebruiken die je hebt geschreven, wat waarschijnlijk niet de meest efficiënte manier is, dan zou je de query elke keer binnen moeten uitvoeren de lus, zodat elke query die u schrijft wordt uitgevoerd.
Meer precies, de verwarring lijkt voort te komen uit het feit dat je het verschil tussen het toekennen van een waarde aan een variabele en het doorgeven van een variabele aan een functie voor uitvoering nog niet helemaal hebt ontdekt.