30分前に投稿したことは知っていますが、検索投稿の入力に近づいていると思います:
私はこのようなモデルを作成しました
function matchPosts($keyword)
{
$this->db->get('posts');
$data = array();
$query = $this->db->query("SELECT title,body FROM posts WHERE title LIKE '%$keyword%' or body LIKE '$keyword%' AND status='published'");
if( $query->num_rows() > 0)
{
$data = $query->row_array();
}
$query->free_result();
return $data;
}
データベースから一致を取得しようとしていますが、
コントローラーは次のようになります。
public function searchPosts()
{
$keyword = $this->input->post('search_value', TRUE);
$matched_field = $this->Model_cats->matchPosts($keyword);
echo $keyword;
if( count($matched_field) > 0)
{
$this->load->view('posts_list');
}
else
{
$this->load->view('posts_list');
}
}
これはjsファイルです
$(document).ready(function()
{
$("#search_posts").keyup(function()
{
var searchValue = $(this).val();
$(".posted_post").each(function()
{
$.ajax({
type: "POST",
url : "http://local.blog.com/welcome/searchPosts",
data: {
search_value: searchValue
},
success: function(data)
{
if(data)
{
$(this).show();
}
else
{
$(this).fadeOut();
}
}
});
});
});
});
とビュー:
<br>
<form action="" method="post">
<label for="search_posts"><b>Search Posts</b></label>
<input type="text" id="search_posts" value="" />
</form>
posts_list は、投稿をループするビューです...
Em 私は近づいていますか?この状態では動作しません。