2011-12-09 12 views
-1

如何使用代码点火器读取REVIEW_TEXT列值,试图同时显示TEXT类型的列值

在这行代码点火器以获得非目标代码点火器的性能给了我下面的错误

<p class="excerpt" align="justify"><?=$review->REVIEW_TEXT;?></p> 

给出我的错误,同时显示在网页

A PHP Error was encountered 

Severity: Notice 

Message: Trying to get property of non-object 

Filename: views/reviewpage.php 

Line Number: 83 

这是我的表

CREATE TABLE `techreview`.`trn_reviews` (
    `review_id` int(10) unsigned NOT NULL auto_increment, 
    `review_url` varchar(200) collate latin1_general_ci NOT NULL, 
    `review_text` text collate latin1_general_ci NOT NULL, 
    `review_dt` date NOT NULL, 
    PRIMARY KEY (`review_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci; 

这是

function getReviewDetails($url){  
     $this->db->select('REVIEW_URL,REVIEW_TEXT'); 
     $whereCondition = $array = array('REVIEW_URL' =>$url);  
     $this->db->where($whereCondition); 
     $query = $this->db->get("trn_reviews"); 
     return $query->result();    
    } 

回答

0

我假设你正在做这样的事情我的模型方法?

<?php 
    $review = $this->my_model->getReviewDetails("url_text_here"); 
?> 
<p class="excerpt" align="justify"><?=$review->REVIEW_TEXT;?></p> 

不应该循环访问结果集吗?

<?php 
    $review = $this->my_model->getReviewDetails("url_text_here"); 
    foreach($review as $row) { 
?> 
<p class="excerpt" align="justify"><?=$row->review_text;?></p> 
<?php 
    } 
?> 

如果您的查询只返回1行,那么你可以使用$query->row()方法:

// in your model 
function getReviewDetails($url){  
    $this->db->select('REVIEW_URL,REVIEW_TEXT'); 
    $whereCondition = $array = array('REVIEW_URL' =>$url);  
    $this->db->where($whereCondition); 
    $query = $this->db->get("trn_reviews"); 
    return $query->row();   
} 

// in your view 
<?php 
    $review = $this->my_model->getReviewDetails("url_text_here"); 
?> 
<p class="excerpt" align="justify"><?=$review->review_text;?></p> 

http://codeigniter.com/user_guide/database/results.html

相关问题