ข้อผิดพลาดข้อมูลตารางที่ไม่ได้กำหนดใน CodeIgniter

ฉันได้รับ Undefined table data error ใน CodeIgniter และไม่รู้ว่าเพราะเหตุใด เมื่อฉันพยายามสะท้อนตารางตัวอย่างจากเว็บไซต์ CI ครั้งแรก ทุกอย่างทำงานได้ดี:

function ajaxAvgSalePriceTable(){
$this->load->library('table');
$query = array(
         array('Name', 'Color', 'Size'),
         array('Fred', 'Blue', 'Small'),
         array('Mary', 'Red', 'Large'),
         array('John', 'Green', 'Medium')   
         );
echo $this->table->generate($query);
}  

อย่างไรก็ตาม เมื่อฉันพยายามใช้การสืบค้นของตัวเอง ฉันได้รับข้อผิดพลาด Undefined table data นี่คือรหัสที่ทำให้เกิดข้อผิดพลาด:

function ajaxAvgSalePriceTable(){
    $this->load->library('table');
    $muni = $this->input->POST('muni');
    $query = "SELECT SaleYear AS Y, NewSaleType AS T, count(*) AS C, tblsales.Municipality AS M, format((sum(SalePrice) / sum(Quantity1)),0) AS R FROM tblsales WHERE   tblsales.SaleYear > 2007 AND tblsales.Quantity1 > 2000 AND (tblsales.NewSaleType = 'Industrial') AND tblsales.Municipality = '".$muni."' GROUP BY T,M,Y ORDER BY T,M,Y";
    echo $this->table->generate($query);
}  

มีใครเห็นสิ่งที่ฉันอาจทำผิดบ้างไหม? ฉันได้ทดสอบแบบสอบถามนี้แยกต่างหากและทำงานได้ดีในที่อื่น เพียงแต่ใช้งานไม่ได้ที่นี่


person DanielAttard    schedule 20.09.2013    source แหล่งที่มา


คำตอบ (1)


เปลี่ยนดังนี้ คุณลืมรับข้อมูลจากแบบสอบถาม

function ajaxAvgSalePriceTable(){
    $this->load->library('table');
    $muni = $this->input->POST('muni');
    $query = "SELECT SaleYear AS Y, NewSaleType AS T, count(*) AS C, tblsales.Municipality AS M, format((sum(SalePrice) / sum(Quantity1)),0) AS R FROM tblsales WHERE   tblsales.SaleYear > 2007 AND tblsales.Quantity1 > 2000 AND (tblsales.NewSaleType = 'Industrial') AND tblsales.Municipality = '".$muni."' GROUP BY T,M,Y ORDER BY T,M,Y";

$res = $this->db->query($query);
$data = $res->result_array();

    echo $this->table->generate($data);
}  
person Mansoorkhan Cherupuzha    schedule 20.09.2013
comment
ขอบคุณที่ช่วยเหลือครับ คุณ Mansoorkhan คุณพบปัญหาอย่างแน่นอน - person DanielAttard; 20.09.2013