mysqli_num_rows() expects parameter 1 to be mysqli_result
น่าจะปัญหาเดิมๆ ผิดที่ชื่อตาราง
include_once 'lib/mysql-class.php';
$mysql = new DatabaseManage;
$connect = $mysql->connect();
// $table = "order";
// ORDER เนี่ย มันเป้นคำสงวนใน MySQL ต้องครอบมันด้วย `
$table = "`order`";
$field = "*";
$orders = $mysql->selectAllData($table, $field, $condition=null);
print_r($orders);
ตัวคลาสนี้ไปเอามาจากไหนครับ
ใช้แล้วยิ่ง debug ยากขึ้นไปใหญ่
เพราะมันไม่มีการแสดง error จาก query
//--- Select All --->
//--- Return Array()
ลองแก้ตรงนี้ดูจะได้ debug ง่ายขึ้น
public function selectAllData($table, $field, $condition) {
$q = 'SELECT ' . $field . ' FROM ' . $table;
if ($condition != null)
$q .= ' WHERE ' . $condition;
try {
if ($this->tableExists($table)) {
$link = $this->connect(); // เอา mysqli object ออกมา
$query = mysqli_query($link, $q);
if (mysqli_errno($link)) { // หากมี error
echo mysqli_error($link) . ' : ' . $q; // แสดง error และ query
exit; // จบการทำงาน
}
$num = mysqli_num_rows($query);
$resultArray = array();
for ($i = 1; $i <= $num; $i++) {
$result = mysqli_fetch_array($query);
array_push($resultArray, $result);
}
mysqli_free_result($query);
return $resultArray;
}
else
return false;
} catch (Exception $e) {
return $e;
}
}
Date :
2013-03-05 16:40:57
By :
cookiephp
โอ้ว เมพมว๊ากก ท่านแมวฯ ผมลองเปลี่ยนชื่อ table ก็หายเลย ไม่ได้เอะใจ.. เงิบอยู่ 2 วัน พอดีลองไปโหลด Mysql Libary มาใช้
Date :
2013-03-05 17:09:18
By :
Necrotorture
Load balance : Server 03