Gamath
Gamath

Reputation: 1

Error connecting DB with Codeigniter

I have seen the same problem a hundred times here. But for some reason, all those solutions don't work for me. I'm using Ajax to connect to the database through the controller and model. But the Ajax request returns error every time. I think the problem may be located in the 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);
      }
  });

Controller:

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

Model:

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
);

Upvotes: 0

Views: 52

Answers (1)

DFriend
DFriend

Reputation: 8964

Add the following to the .ajax options after url: ...

dataType: 'json',

Then in the controller the last line should be

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

May not be exactly what you expect but it might cure the error everytime problem.

Upvotes: 1

Related Questions