Php

2010-02-18 12 views
8

'daki bir mysql sorgusu boyunca satırda yineleme nasıl Tamam, Bu nedenle veritabanımı sorgulamaya çalışıyorum ve belirli bir değere sahip tüm satırları seçiyorum. Bundan sonra, sorguyu mysql_fetch_array() ile bir diziye dönüştürürüm, sonra her döngü için bir tane kullanarak satır tarafından yinelenen dizi boyunca yinelemeyi denedim. Ben pointsAvailable sütununda yanında herhangi bir sütun için bunu yaparkenPhp

<?php 
$query = mysql_query("SELECT * FROM users WHERE pointsAvailable > 0 ORDER BY pointsAvailable Desc"); 
$queryResultArray = mysql_fetch_array($query); 
foreach($queryResultArray as $row) 
{ 
    echo $row['pointsAvailable']; 
} 
?> 

olsa tip metnin "ad" adında bir sütun yalnızca tek bir harf döndürür söylüyorlar.

İade edilen bir sorgu satırını satır başına nasıl yineleyebilirim ve geçerli satırdan belirli veri sütunlarını getirebilir miyim?

cevap

22
$result = mysql_query("SELECT id, name FROM mytable"); 

while ($row = mysql_fetch_array($result, MYSQL_NUM)) { 
    printf("ID: %s Name: %s", $row[0], $row[1]); 
} 

veya MYSQL_ASSOC kullanarak mysql_fetch_array ($ result) kullanarak adlandırılmış sütunlar

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { 
    printf("ID: %s Name: %s", $row["id"], $row["name"]); 
} 
+0

Mükemmel çalıştığınız için teşekkür ederiz. Yani her seferinde mysql_fetch_array sorgu kaynağında her seferinde bir satır döndürüyor mu? – AFK

+0

Her zaman mysql_fetch_array çağrılır, geçerli satırı döndürür ve veri işaretçisini bir sonraki satıra taşır. Tüm satırlar geçtiğinde, false döndürür ve while döngüsü sona erer. – Trevor

0

Evet kullanmanızı sağlayacak gitmek için bir yoldur.