Codeigniter与数据库连接但没有来自数据库表的查询响应。我的数据库已经从Postgresql转换为Mysql,我们的表类型是InnoDB,但是我在Godaddy服务器中创建了一个样本表,其表类型是MyISAM。我不知道我面临的问题是什么
的.htaccess
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]
login_view.php
var name = {
ajax: 1,
name: $('#login-username').val()
}
$.ajax({
url: base_url+"login/username_validation",
type: 'POST',
data: name,
dataType: 'json',
success: function(data)
{
$.each(data.response.userid, function (a, b)
{
if((b.count) == 1)
{
$("#login").removeAttr("style");
$(".alertbox").css("display", "none");
$("#login-password") .focus();
}
});
的login.php
public function username_validation()
{
if ($this->input->post('ajax'))
{
$username = $this->input->post('name');
$result['userid'] = $this->common_model->chk_username($username);
$this->output->set_content_type('application/json')->set_output(json_encode(array('response'=>$result)));
}
}
common_model.php
public function chk_username($username)
{
$this->db->select('count(*) as count');
$this->db->from('mas_user');
$this->db->where('login_id',$username);
return $this->db->get()->result();
}
mysql表
user_creation_id login_id password
1 admin admin123
交
ajax : 1
name :admin
回复
{"response":{"userid":[]}}
status 200 ok
答案 0 :(得分:0)
似乎问题出在你的login.php上,你问ajax是否等于true,当ajax实际上等于1时。
尝试使用以下两个选项之一
在你的login.php中
if ($this->input->post('ajax') == 1)
或在您的login_view.php中
var name = {
ajax: true,
name: $('#login-username').val()
}