Misschien een heel simpele vraag met een simpel antwoord. Maar als ik bijvoorbeeld een MySQL query doe en de results doorloop met een while, hoe kan ik er dan eentje skippen en ik dus niet alles wat in de while-lus sta doorloop? Is er zoiets als 'next' ofzo?
Kun je met een if() constructie binnen de while-loop dat niet oplossen?
Geen idee, maar een idee is wel om gewoon een if {...} te zetten in de lus.
Wil je een record skippen zonder deze over te halen naar je client PC ??
Dagelijkse stats bronnen: https://x.com/GeneralStaffUA en https://www.facebook.com/GeneralStaff.ua
een betere query maken zodat je dat record niet in je recordset hebt?
Ik frut, dus ik epibreer
Duh, zo simpel, waarom kwam ik daar zelf niet opOp vrijdag 19 april 2002 08:19 schreef pistole het volgende:
een betere query maken zodat je dat record niet in je recordset hebt?
Maar soms kom je er niet omheen dat de record toch in je result set zit, terwijl je hem eigenlijk niet wil. Nu ik die zin type, denk ik eigenlijk ook dat je zo goed als alles kan afvangen met query's
Dagelijkse stats bronnen: https://x.com/GeneralStaffUA en https://www.facebook.com/GeneralStaff.ua
Als ik het goed begrijp zal je loop er dus ongeveer als volgt uit zien:Op vrijdag 19 april 2002 08:22 schreef beany het volgende:
[..]
Duh, zo simpel, waarom kwam ik daar zelf niet op
Maar soms kom je er niet omheen dat de record toch in je result set zit, terwijl je hem eigenlijk niet wil. Nu ik die zin type, denk ik eigenlijk ook dat je zo goed als alles kan afvangen met query's
PHP:
1
| <?while ($record = mysql_fetch_object($result)) { // Code}?> |
Als je een bepaald record wilt overslaan kan je het eenvoudig met continue doen:
PHP:
1
| <?while ($record = mysql_fetch_object($result)) { // Code if ($overslaan) continue;}?> |
Continue gaat weer naar het begin van de while lus toe.
It’s nice to be important but it’s more important to be nice
Inderdaad eenvoudig, maar ook netjes? IMHO niet, continue maakt er een beetje spagetticode van ( is een soort van gotoOp vrijdag 19 april 2002 09:39 schreef JonkieXL het volgende:
Als je een bepaald record wilt overslaan kan je het eenvoudig met continue doen:
Continue gaat weer naar het begin van de while lus toe.
Je lus moet dat record gewoon niet binnen krijgen. Dat houdt het een stuk overzichtelijker
... en als je gewoon de volgende record wilt hebben kan dat met een mysql_fetch_row() of iets dergelijks.
Everyone complains of his memory, no one of his judgement.
Lijkt me wel, anders is er iets heel erg grondig mis met je database ontwerp.beany:
Nu ik die zin type, denk ik eigenlijk ook dat je zo goed als alles kan afvangen met query's
Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz
Ach, zolang je die continue maar bovenaan de while lus zet is er niet zoveel aan de hand imhoOp vrijdag 19 april 2002 10:12 schreef Glimi het volgende:
[..]
Inderdaad eenvoudig, maar ook netjes? IMHO niet, continue maakt er een beetje spagetticode van ( is een soort van goto
Je lus moet dat record gewoon niet binnen krijgen. Dat houdt het een stuk overzichtelijker
Probleem van MySQL is dat je geen subqueries kunt maken zoals bijvoorbeeld in Oracle, anders had ik dat probleem ook niet gehad :-) Maar ik ga het eens proberen met de continue functie. Thanks.Op vrijdag 19 april 2002 10:56 schreef drm het volgende:
[..]
Lijkt me wel, anders is er iets heel erg grondig mis met je database ontwerp.
Pagina: 1