Ben mysqli kullanarak sonuç kümesi üzerinde döngü çalışıyorum ve bind / getir.
static function getConnection()
{
if (!isset(self::$db_conn))
{
self::$db_conn = new mysqli(self::$DBSERVER,self::$DBUSER,self::$DBPASS, ModelBase::$DBNAME) or die(mysql_error(0)." Error handling database connection. ");
}
return self::$db_conn;
}
Yukarıdaki getConnection () fonksiyonudur. Bu sınıf devralan bir ModelBase sınıftadır.
$term = "%".$term."%";
$con = ModelBase::getConnection();
$sql = "SELECT name FROM cities WHERE name LIKE ? LIMIT ?";
$query = $con->prepare($sql) or die("Error preparing sql in City ".parent::$db_conn->error);
$query->bind_param("si", $term, $limit) or die("Error binding params in City ".parent::$db_conn->error);
$query->execute() or die("Error executing query in City");
$tmp = "";
$query->bind_result($tmp);
while($query->fetch());
{
error_log($tmp);
echo($tmp."\n");
}
$query->close();
Ancak, ben alıyorum bütün sadece bir kez son sonucudur ve. Orada daha sonra bir sonucu olabilir, ve ben phpMyAdmin veya bir isteminde aşağıdaki sorguyu kontrol ederken ben birden çok satır almalısınız.
SELECT name FROM cities WHERE name LIKE %d% LIMIT 150
Ben değiştirirseniz, bu sorun görünmüyor
$ Sorgu-> bind_result ($ tmp);
karşı
$ Sorgu-> bind_result (& $ tmp);
Sözdizimi yanlış başka bir şey mi?
Is there an easier way karşıdo this? Maybe a way karşıfetch the object?