web-gelistirme-sc.com

Bir veritabanı sorgusunun sonuçları olup olmadığını nasıl kontrol edebilirim?

Aşağıdaki kodun sonuçları olup olmadığını nasıl kontrol edebilirim?

boş işlevini denedim ama her zaman geri dönüyor YANLIŞ


$query = db_select('my_table', 't');
$query->condition('code', 10)
      ->fields('t', array('cid'));
$result = $query->execute();

11
hpn

Eğer doğruysam execute () çağrısının sonucu rowCount işlevi olan bir DatabaseStatementInterface olmalıdır.

14
Jensen

var_dump($result); yazdırırsanız, $result Öğesinin sorguyu ve diğer değişkenleri içerdiğini görürsünüz, böylece asla boş olmaz.
Sonuçları görmek için $result Öğesini foreach döngüsüne koyabilirsiniz.

foreach ($result as $record) {
  var_dump($record);
}

foreach döngüsünün içinde, sonuçları bu kodla yazdırabilirsiniz.

foreach ($result as $record) {
  print $record->nid;
  print $record->title;
}

Sonuç olarak yalnızca bir kayıt varsa kaydı işlemek için mysql_fetch_array() kullanın.

1
JurgenR

Bunu dene

while($record = $result->fetchAssoc()) {
print_r($record);
}
0
Ahmad