查看:
<?php
foreach ($query as $row){
echo '<tr><td>
<label class="checkbox">' .
form_checkbox('delete[]',$row['link']) .
form_anchor('site/see_art',$row['link']) .
$row['title'] . "</a></td>
<td> " . substr($row['pub_date'], 5, 12) . "</label></td></tr>";
} ?>
控制器:
function see_art()
{
$this->load->model('membership_model');
$this->membership_model->see_art();
}
模型:
function see_art()
{
$this->db->where(array('title' => !!THE VALUE OF THE ANCHOR));
$q = $this->db->get('feeds');}
print_r($q->result());
}
在我看来,我已经展示了一些标题。我想做类似的事情:当点击标题时使用函数控制器并显示我的数据库中的行,其中title = VALUE of anchor。我不知道该怎么做以及如何在点击它时使用锚的值。
答案 0 :(得分:0)
好的,你只有办法,无需重新加载页面: AJAX
您必须使用javascript编程(我建议您使用jQuery执行请求)一个事件,允许您将请求发送到标题的服务器。
如果您不知道如何使用它,请检查http://www.w3schools.com/jquery/jquery_ajax_intro.asp
您将对控制器中的方法执行请求,并在那里查看答案。
在您的控制器中,您将拥有类似
的内容public function ajax_petition() {
$slug = $this->input->post('slug');
$this->load->model('membership_model');
$title = $this->membership_model->get_title( $slug );
return $title;
}
您必须对模型进行编程才能返回标题:
public function get_title( $slug ) {
$object = $this->db->select('title')
->from('feeds')
->where('slug', $slug)
->limit(1)
->get()
return ($object->num_rows > 1) ? $object->row()->title : '';
}
对不起,您的问题很通用,但根据您的要求,您必须使用我上面写的内容
其他的事情,并不是真正相关但重要的事情:不要在模型中使用print_r或echo。模型仅用于检索数据,控制器仅用于获取输入数据并调用模型,而视图仅用于显示控制器发送给它们的数据。否则,你将杀死MVC,D
您的上述功能应该是:
控制器:
function see_art()
{
// Get the input data from user
$title = $this->input->post('title');
// Retrieve the data from the model
$this->load->model('membership_model');
$data['feeds'] = $this->membership_model->see_art( $title );
// Send them to the view
$this->load->view('path_to_your_view', $data);
}
查看
<?php // This will print all the feeds sent from the controller
foreach ($feeds as $feed){
echo '<tr><td>
<label class="checkbox">' .
form_checkbox('delete[]', $feed->link ) .
form_anchor('site/see_art', $feed->link ) .
$feed->title . "</a></td>
<td> " . substr($feed->pub_date, 5, 12) . "</label></td></tr>";
} ?>
型号:
// This will give you back all the feeds with the title sent
function see_art( $title )
{
$this->db->where( array('title' => $title ) );
$q = $this->db->get('feeds');}
return $q->result();
}
更多内容:从DDBB检索数据时,使用“select”并准确指定所需的数据,将提高应用程序的性能。
最后,也许控制器,模型和视图对于你想要的东西不准确,但我只想表达如何做到这一点的想法。