SQL sonuçlarını döndürmek için php fonksiyonu

3 Cevap php

Bu i ne var

function GetEventsList(){
	$result = mysql_query("SELECT * FROM `events`") or trigger_error(mysql_error()); 
	while($row = mysql_fetch_array($result)){ 
	foreach($row AS $key => $value) { $row[$key] = stripslashes($value); } 
	$id = $row['id'];
	$en = $row['name'];
	$endt = $row['date'];
	$push = "<option value=$id>$en - $endt</option>";
	return $push;
	}
	}

3. tabloda olduğunda onun sadece 1 sonuç geri

3 Cevap

Eğer ilk yinelemenin sonunda işlevinden dönen çünkü budur. Deneyin:

function GetEventsList() {
  $result = mysql_query("SELECT * FROM `events`") or trigger_error(mysql_error()); 
  $push = '';
  while ($row = mysql_fetch_array($result)) {
    foreach($row AS $key => $value) {
      $row[$key] = stripslashes($value); 
    }
    $id = $row['id'];
    $en = $row['name'];
    $endt = $row['date'];
    $push .= "<option value=$id>$en - $endt</option>";
  }
  return $push;
}

Bir yan not: Eğer nokta için çok daha kolay olurdu iyi biçimlendirme / girintilemeyi kullanılırsa.

Ayrıca, size kullanmanız gereken eminiz stripslashes()?

Ben doğru kod okuyorsam, $ itme dönmek; erken while döngüsü çıkılıyor. Tüm sonuçlar bir şey toplandı ve sadece saklanır sonra dönmek istiyorum.

Lütfen foreach döngüsünde echo $ push kullanarak ya; gerektiği gibi veya bir diziye seçenek elemanın her tekrarında koymak, sonra dizi yerleştirin.