连接DB与Codeigniter时出错

时间:2017-05-15 21:57:14

标签: php ajax database codeigniter

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

的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 个答案:

答案 0 :(得分:1)

.ajax

之后的url: ...选项中添加以下内容
dataType: 'json',

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

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

可能不完全符合您的预期,但它可能会在每次问题时解决错误。