Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法让自动完成在CodeIgniter-Thinks中工作?_Php_Codeigniter_Jquery Autocomplete - Fatal编程技术网

Php 无法让自动完成在CodeIgniter-Thinks中工作?

Php 无法让自动完成在CodeIgniter-Thinks中工作?,php,codeigniter,jquery-autocomplete,Php,Codeigniter,Jquery Autocomplete,我有一个表单,用户可以在其中键入视频游戏的名称。我要做的是在一个字段中设置一个名为“gameTitle”且ID为“gameTitle”的自动完成。自动完成是从一个名为“title”的字段中从一个名为“aararity”的数据库表中提取 我用它作为我的范例 首先,我知道要让autocomplete正常工作,您需要在config/config.php中使用它,我需要: $config['csrf_protection'] = FALSE; 在我看来,我有: $(document).ready(fu

我有一个表单,用户可以在其中键入视频游戏的名称。我要做的是在一个字段中设置一个名为“gameTitle”且ID为“gameTitle”的自动完成。自动完成是从一个名为“title”的字段中从一个名为“aararity”的数据库表中提取

我用它作为我的范例

首先,我知道要让autocomplete正常工作,您需要在
config/config.php
中使用它,我需要:

$config['csrf_protection'] = FALSE;
在我看来,我有:

$(document).ready(function() {
$(function() {
$( "#gameTitle" ).autocomplete({ // the field I want to autocomplete is called gameTitle
source: function(request, response) {
$.ajax({ url: "",
data: { term: $("#gameTitle").val()},
dataType: "json",
type: "POST",
success: function(data){
response(data);
}
});
},
minLength: 2
});
});
});
以下是我的控制器中的“建议”函数(在$row->title中引用的“标题”是指我试图从中提取的数据库表中的“标题”字段):

基本上,当我运行表单时,没有任何自动完成功能。我认为
$options[关键字]
参数可能是问题所在;我几乎是从前面提到的博客中复制的,我猜这可能是作者使用的一个模糊的占位符


我错过了什么?

天哪,我简直不敢相信……我想出来了

suggestions()试图调用一个不存在的名为“autocomplete\u model”的模型——我忘了将其更改为“usergames\u model”


现在它工作得非常好

您要发布到的
url
是什么。谁说csrf应该关闭。你犯了什么错误?我一点也没犯错误;我只是没有自动完成。我在原始帖子中提到的博客说,你需要关闭CSRF以实现自动完成。我也看到其他一些消息来源这样说。我要发布到的URL??你是什么意思?哦…我现在发布的是我的控制器“用户游戏”的“建议”功能。首先,url对我来说似乎是空的
url=''
。其次,您可以添加csrf。但是现在,你怎么没有出错呢。无错误表示自动完成的源为空。您是否尝试过在没有自动完成的情况下查看数据库中的结果?我的数据库中没有任何结果…只是尝试过。奇怪的
function suggestions()
{
            $this->load->model('usergames_model');
            $term = $this->input->post('term',TRUE);

            if (strlen($term) < 2) break;

            $rows = $this->autocomplete_model->GetAutocomplete(array('keyword' => $term));

            $json_array = array();
            foreach ($rows as $row)
            array_push($json_array, $row->title);

            echo json_encode($json_array);
}  
function GetAutocomplete($options = array())
{
     $this->db->select('title');
     $this->db->like('title', $options['keyword'], 'after');
     $query = $this->db->get('aararity');
     return $query->result();
}