PHP MySQL ile Trouble dizi işlevi getir

3 Cevap php

Ben 2 tablo ile bir veritabanı var.

Tablolardan biri 0-10, sayıları içeren bir satır tutar.

PHP, ben bunu:

$query = "SELECT ".$param." FROM issues WHERE ".$param." >=0";
$result = @mysql_query($query) or showError("query failed");
if (!($record = mysql_fetch_array($result))) return null;
return $record;

$ Param sıranın adını tutar.

Ben tür 10 0 sayısını tutan bir dizi olsun bekleniyor, ama bunun yerine 2 elemanlı bir dizi olsun:

[0] = 0 [row_name] = 0

Ve işte bu.

Ben daha önce bu işlevleri hiç çalışmamıştım ve www.php.net gerçekten yardım herhangi bir örnek yok ...

3 Cevap

Burada başarmak için çalışıyoruz ne tam olarak emin değilim, ama ne istediğiniz olduğunu düşünüyorum:

// query...
$records = array();
while($r = mysql_fetch_array($result)) {
    $records[] = $r;
}
return $records;

Siz bir çağrı tüm sonuçları almak istiyoruz. Senin yöntem ile döngü Paolo gibi sonuçlar gösterdi var. Ama fetchAll PDO ile kullanmak daha iyi olabilir. PHP veritabanı bağlantıları öğrenme ise, öğrenmek PDO.

Varsayılan olarak mysql_fetch_array diziler, normal ve ilişkisel hem de döner, böylece ([0] $ result) veya isim ($ result ['user_name']) tarafından 'konumuna göre değerleri erişebilirsiniz:

array mysql_fetch_array  ( resource $result  [, int $result_type  ] )

result_type: The type of array that is to be fetched. It's a constant and can take the following values: MYSQL_ASSOC, MYSQL_NUM, and the default value of MYSQL_BOTH.