我正在尝试使用 CodeIgniter 显示表格。我做了一个函数来从一个表中选择所有数据,并在单击按钮时使用foreach循环显示它。我收到了这个错误:
Fatal error: Call to undefined method CI_DB_mysql_driver::result() in C:\Xampp\htdocs\Auction\application\models\bidding_model.php on line 47
这是我的控制器页面:
public function viewauction()
{
$this->load->model('bidding_model');
$data['query'] = $this->bidding_model->viewauction();
$this->load->view('auction_view', $data);
}
这是模型:
function viewauction()
{
$query = $this->db->select('products');
return $query->result();
}
这是观点:
<tbody>
<?php foreach($query as $row): ?>
<tr>
<td><?php echo $row->product_id; ?></td>
<td><?php echo $row->auction_id; ?></td>
<td><?php echo $row->start_time; ?></td>
<td><?php echo $row->end_time; ?></td>
</tr>
<?php endforeach; ?>
</tbody>
答案 0 :(得分:3)
只需将模型方法代码更改为
即可function viewauction()
{
$query = $this->db->select('*')->from('products')->get();
return $query->result();
}
希望这会有所帮助。谢谢!
答案 1 :(得分:0)
你必须使用get()
select()
查询构建器用于选择表的列而不是表
例如
$query = $this->db->select(array('product_id','auction_id'))
->get('products');
return $query->result();
如果你想选择所有你可以使用get only,
阅读更多内容 http://ellislab.com/codeigniter/user-guide/database/active_record.html#select
答案 2 :(得分:0)
你的问题在这里:
$query = $this->db->select('products');
return $query->result() ;
$query->result()
返回false可能是因为products表不存在。你必须使用get而不是select。
尝试:
$query = $this->db->get('products');
return $query->result() ;
这可以让你开始
答案 3 :(得分:0)
$( "#slider-range" ).slider({
orientation: "vertical",
range: true,
min: 1,
max: 5,
values: [2,4],
slide: function( event, ui ) {
$( "#amount" ).val( ui.values[ 0 ] + " - " + ui.values[ 1 ] );
// Reset to previous colors (by removing .red class)
$(".star-group").removeClass('red');
// For each group of stars ...
$(".star-group").each(function(){
// ... check if the number of stars in this object is in the VALUES INTERVAL, then add class RED
if ($(this).find('i').length >= ui.values[0] && $(this).find('i').length <= ui.values[1]){
$(this).addClass('red');
}
})
}
});
$( "#amount" ).val( $( "#slider-range" ).slider( "values", 0 ) + " - " + $( "#slider-range" ).slider( "values", 1 ) );
我希望上面的代码可以帮到你。
答案 4 :(得分:0)
实际上有一种更简单的方法。
你应该从它提供的框架功能中获得最多,
使用CodeIgniter的表库
$this->load->library('table'); // Loading the Table Library
$query = $this->db->get('table_name'); // the MySQL table name to generate HTML table
echo $this->table->generate($query); // Render of your HTML table
如果您想要一些自定义内容,例如桌面或正文中的类或任何您需要的东西,您也可以修改HTML生成器的行为。
$this->table->set_template($template); // passing an array
加载表库后使用此行。使用下面文档链接中的密钥。
答案 5 :(得分:0)
function viewauction()
{
$this->db->select('*');
$this->db->from('tablename');
$query = $this->db->get();
return $query->result();
}
以上代码可以帮助您。