Ошибка Codeigniter MySQL DB с Amazon RDS

У меня самое плохое время с этим после поиска часов и часов.

Мое подключение к учетным данным Amazon RDS правильное, однако я не могу получить какие-либо данные и получаю 500 ошибок из-за следующего.

Я сделал это в самом простом коде, чтобы избежать ошибок CI. На моей модели:

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

$this->db = $this->load->database('aws');

}

function get_sql_results($state,$county){

return $this->db->query("select State, County from foreclosure_properties     where State = 'CA' AND County = 'del norte'");
}
}

Тогда на моем контроллере у меня есть:

$this->data['listings'] = $this->foreclosure_model->get_sql_results($state,$county);

на моей информации о соединении AWS у меня есть:

$db['aws']['hostname'] = 'XXXXXXXXXXXXX.us-west-2.rds.amazonaws.com';
$db['aws']['username'] = 'XXXXXXXX';
$db['aws']['password'] = 'XXXXXXXX';
$db['aws']['database'] = 'xxxxxx_xxxxxx';
$db['aws']['dbdriver'] = 'mysql';
$db['aws']['dbprefix'] = '';
$db['aws']['pconnect'] = TRUE;
$db['aws']['db_debug'] = TRUE;
$db['aws']['cache_on'] = FALSE;
$db['aws']['cachedir'] = '';
$db['aws']['char_set'] = 'utf8';
$db['aws']['dbcollat'] = 'utf8_general_ci';
$db['aws']['swap_pre'] = '';
$db['aws']['autoinit'] = TRUE;
$db['aws']['port'] = 3306;

Я попытался сделать то же самое соединение напрямую с Navicat, чтобы проверить соединение SQL и запрос, он работает успешно. Я не могу заставить это работать в Codeigniter.

Результат при запуске на Codeigniter — ошибка 500.

Любая помощь очень ценится.

2

Решение

Поскольку вы используете более одного соединения, вам нужно будет передать второй параметр ‘TRUE’, чтобы вернуть объект базы данных.

$this->db = $this->load->database('aws', TRUE);

Если вы не передадите это, то объект базы данных не будет возвращен, и поэтому вы не сможете вызвать ни одну из функций (таких как get (), query () и т. Д.).

Вы можете прочитать больше о нескольких подключениях здесь:
https://ellislab.com/codeigniter/user-guide/database/connecting.html

Надеюсь, это поможет — дайте мне знать, как вы поживаете!

Примечание: стоит упомянуть, что это может упростить ситуацию, если вместо назначения базы данных $ this-> db вы выбрали другое имя, такое как $ this-> aws_db, так как вы не перезаписываете объект $ this-> db для вашей базы данных по умолчанию. Вероятно, не большая проблема, но может помочь в устранении неполадок по мере роста вашего проекта.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]