Вопрос, который приходит мне в голову, заключается в том, возвращает ли мой запрос значения из базы данных или я что-то пропустил в своем коде.Я пытался понять это, но я не в состоянии понять.
print_r ($ tagnames) ничего не печатает на экране.
Этот код является частью контроллера
function get_Names() {
// Convert the string to the lowercase
$q = strtolower($this->input->post('q', TRUE));
if(!$q) {
return;
}
$tagnames[] = $this->autocomplete_model->getData();
print_r($tagnames);
echo json_encode($tagnames);
}
У меня естьautocomplete_model.php и этот код является частью модели
class Autocomplete_model extends CI_Model {
public function __construct() {
parent::__construct();
}
function getData() {
$q = $this->db->query("SELECT * FROM tags");
if($q->num_rows() > 0) {
foreach($q->result() as $row) {
$data[] = $row->tag_name;
}
return $data;
}
}
}
У меня есть следующий код на мой взгляд
$(document).ready(function() {
$(function() {
$( "#tagname" ).autocomplete({
source: function(request, response) {
$.ajax({ url: "<?php echo site_url('generator/get_Names'); ?>",
data: { term: $("#tagname").val()},
dataType: "json",
type: "POST",
success: function(data){
response(data);
}
});
},
minLength: 2
});
});
});
Заранее спасибо.