2017-05-15 50 views
0

我在这里看到了同样的问题一百次。但由于某种原因,所有这些解决方案都不适合我。我正在使用Ajax通过控制器和型号连接到数据库。但Ajax请求每次都会返回错误。我认为这个问题可能位于database.php中。将数据库连接到Codeigniter时出错

的Ajax:

$.ajax({ 
     type: "POST", 
     url: '<?php echo site_url("Main/resultadosBusqueda")?>', 
     success: function(result){ 
     alert('Success:'+result); 
     }, 
     error: function(result){ 
      console.log(JSON.stringify(result, null, 2)); 
     alert('Error:'+result); 
     } 
    }); 

控制器:

public function resultadosBusqueda() { 
     $this->load->model('Buscar_model'); 
     echo $this->Buscar_model->buscarCartas(); 
    } 

型号:

class Buscar_model extends CI_Model { 
    public function __construct() { 
      parent::__construct(); 
    } 

    public function buscarCartas() { 
     $this->db->select('Card'); 
     $this->db-> from('Cards'); 
     $query = $this->db->get(); 

     return $query -> result_array(); 
    } 
} 

database.php中

$active_group = 'default'; 
$query_builder = TRUE; 

$db['default'] = array(
'dsn' => '', 
'hostname' => 'localhost', 
'username' => 'root', 
'password' => '', 
'database' => 'CardTrade', 
'dbdriver' => 'mysqli', 
'dbprefix' => '', 
'pconnect' => FALSE, 
'db_debug' => (ENVIRONMENT !== 'production'), 
'cache_on' => FALSE, 
'cachedir' => '', 
'char_set' => 'utf8', 
'dbcollat' => 'utf8_general_ci', 
'swap_pre' => '', 
'encrypt' => FALSE, 
'compress' => FALSE, 
'stricton' => FALSE, 
'failover' => array(), 
'save_queries' => TRUE 
); 
+1

什么错误? ..您确定Ajax使用的路径是否在路由中设置,并在CI内重定向到控制器? – Daniel

+0

@Gamath请写下错误 –

+0

我试图返回一个字符串('你好,世界,这里是模型'),没有数据库连接,工作正确。这是当我打电话或做任何有关分贝时,它停止工作。浏览器控制台中的日志根本没有提供任何有用的信息。 – Gamath

回答

1

添加以下到.ajax选项后url: ...

dataType: 'json', 

然后在控制器中的最后一行应该是

echo json_encode($this->Buscar_model->buscarCartas()); 

可能不完全是你期待但它可能会治愈每次问题的错误。

+0

我照你说的做了。但.ajax仍然会返回错误。 – Gamath

相关问题