Ajax Авто-полный поиск с кодом-воспламенителем из моей базы данных. Я пытаюсь выполнить поиск в моей базе данных, и Ajax завершает поиск из элементов, сохраненных в моей базе данных. Я считаю, что мне не хватает простого трюка. Может быть, я пишу свой контроллер или, может быть все, что все неправильно ... Код нижеAjax Авто-полный поиск с кодом-воспламенителем
// Просмотр страницы Местоположение путь: приложение/просмотров/шаблон/заголовок
<form class="navbar-form" >
<input type="text" id="mysearch" placeholder="search" onkeyup="doSearch();">
<br />
<script>
// This is the jQuery Ajax call
function doSearch()
{
$.ajax({
type: "GET",
url:"localhost/codeigniter/index.php/ajax/getdata/" + $("#mysearch").val(),
success:function(result){
$("#searchresults").html(result);
}});
}
//class example
</script>
Note: My form or search box is inside my header... So my view page is located in template/header
// Controller Page
Location path: codeigniter/application/controller/ajax.php
class Ajax extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('ajax_model');
//$this->load->helper('url_helper');
}
public function form()
{
$data['title'] = 'Ajax search';
$this->load->view('template/header');
}
// function ends
public function getdata($param = '')
{
// Get data from db
$data['ajaxdata'] = $this->ajax_model->search($param);
// Pass data to view
$this->load->view('template/header', $data);
}
}
?>
// Моя модель Путь расположения: приложение/модель/Ajax_model.php
<?php if (! defined('BASEPATH')) exit('No direct script access');
class Ajax_model extends CI_Model
{
public function __construct()
{
$this->load->database();
}
public function search ($title){
$this->db->select('title');
$this->db->select('text');
$this->db->like('title', $title, 'both');
return $this->db->get('news');
}
}
?>
Обратите внимание: я новичок в CodeIgniter. Это объясняет мое невежество довольно очевидно
попробовал свое предложение, и это было сделать разницу в мой результат. Спасибо, но не возвращая данные из моей базы данных, но вместо этого я получаю это {"conn_id": {"affected_rows": null, "client_info": null, "client_version": null, "connect_errno": null, "connect_error": null, " ERRNO ": нулевой," ошибка ": нулевой," field_count ": нулевой," host_info ": нулевой," информация ": нулевой," insert_id ": нулевой," server_info ": нулевой," server_version ": нулевой," стат» : null, "sqlstate": null, "protocol_version": null, "thread_id": null, "warning_count": null}, "result_id": – user3335348
Подобно запросу без метода get. Попробуйте это: удалите одну строку выбора и используйте этот параметр '$ this-> db-> select ('title, text');'. Здесь можно найти [здесь] (http://stackoverflow.com/questions/6112972/select-from-multiple-columns-codeigniter#answer-6117454). – Tpojka
вместо предложенных «echo $ data ['ajaxdata'];" если я включаю «$ this-> load-> view (« ajax/index », $ data); в моем контроллере и попытайтесь форматировать результат на моей странице просмотра index.php с моими $ ajaxdata. Как поместить это в цикл? Я пытался его обработать и пробовал цикл for, но опять-таки мне может не хватать чего-то – user3335348