Kyse on siis tietokantakyselyn tulostamisesta selaimelle. Tapojahan on monia ja itse olen jumittanut seuraavanlaiseen silmukkaan:
<?php //$sql-muuttujassa on tietokantahaun tulokset while($r = mysql_fetch_array($sql)){ echo $r['foo']; } //Ja jos oikein haluaa varmistella, niin: while(($r = mysql_fetch_array($sql)) !== false){ echo $r['foo']; } ?>
Myös paljon käytetty on tuo putkan oppaissakin esitelty
Jostain olen saanut sen käsityksen, että tuo on hieman vanhentunutta käytäntöä jo. Vai miten on?
Ainakin omasta mielestäni tuo ensimmäinen esimerkki on paljon selkeämpi ja lisäksi jos kannasta haetaan samalla kyselyllä useampia sarakkeita, saa sarakkeiden nimet suoraan muuttujiksi kätevästi extract()-funktiolla:
Miten on? Miten te muut olette hoitaneet nuo silmukat? Ja miksi juuri sillä tyylillä?
Itse tapaan käyttää tuota toisena olevaa "perinteistä" tapaa. Syynä on se, että toteutus toimii ihan hyvin ja olen tottunut käyttämään sitä. Kieltämättä tuo toinen tapa voisi lyhentää koodia. Toisaalta silloin tiedot on pakko käydä yksi kerrallaan läpi. Lopputulokseen tällä asialla ei kuitenkaan ole vaikutusta, eli kannattaa varmaan valita se menetelmä, josta itse pitää eniten. :)
Itse olen tykästynyt mysql_fetch_assoc() - funktioon. Sehän siis palauttaa pelkästään tuon assosiatiivisen taulukon, kun taas tuolla _array():llä saa halutessaan myös numeerisen, tai vain jommankumman. Mutta kukin tyylillään, sanoi hanhiemo :)
Itse olen aina objektien perään, joten mysql_fetch_object on minua varten. Samahan se on käyttääkö arraytä vai objektia, mutta objekti tuntuu loogisemmalta.
edit: TYPO...
Aihe on jo aika vanha, joten et voi enää vastata siihen.