Как я могу использовать соединение с базой данных уже подключенной базы данных в codeigniter?
У меня уже есть база данных, подключенная в папке config database.php
файл. Есть ли переменная, которая может просто ссылаться на это MySQLi
соединение, так что я могу использовать соединение и сделать ручную вставку, как
mysqli_query($alreadyconn, "insert into table ...");
insert()
в Codeigniter.com
Я знаю, как вставить в codeigniter, но мне нужно выше конкретный случай. и здесь я не могу восстановить эту базу данных и использовать переменную.
Любая помощь высоко ценится!
4 ответа
Хорошо. Кажется вы знаете о database.php
, Узнаем еще немного
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost', # host
'username' => '', # Username
'password' => '', # password
'database' => '', # Databse name
'dbdriver' => 'mysqli', # this can be MySQL or MySQLi
Примечание: рекомендуем использовать MySQLi в качестве драйвера БД.
Как подключить базу данных??
Есть три способа заархивировать это
Gobally - (путь -
application/config/autoload.php
)$autoload['libraries'] = array('database');
Только в классе.
class ClassName extends CI_Model { public function __construct() { parent::__construct(); $this->load->database(); } }
Можно использовать во всех методах, добавленных в этот класс
Только внутри методов. (В основном только на контроллерах)
class ClassName extends CI_Controller { public function __construct() { parent::__construct(); } public function index() { $this->load->database(); }
Можно использовать только внутри класса
Что такое Query Builder (3.0+) или Active Records(3.0-)?
Этот шаблон позволяет получать, вставлять и обновлять информацию в вашей базе данных с минимальными сценариями. В некоторых случаях для выполнения действий с базой данных требуется всего одна или две строки кода. CodeIgniter не требует, чтобы каждая таблица базы данных имела свой собственный файл класса. Вместо этого он предоставляет более упрощенный интерфейс.
Как сделать запрос с базой данных & (Query Builder или Active Records)??
Первая загрузка БД в autoload.php
упомянуть выше (лично рекомендуется).
Где бы вы ни находились в модели или контроллере, просто используйте $this->db
чтобы получить открытое соединение с вашей БД.
При этом вы можете добавить методы Query Builder, такие как упоминание в документах codeigniter. если вы любите использовать традиционный метод SQL, вы можете использовать query()
(Который мой любимый).
пример
$this->db->query("SELECT * FROM user WHERE name = 'Sparatn' AND ... OR... ");
Но этого недостаточно для получения значимых данных. Таким образом, вы должны следовать этим шагам, а также
$query = $this->db->query("SELECT * FROM user WHERE name = 'Sparatn' "); # 1
$result = $query->result_array(); # 2
return $result; #3
В #1 назначьте данные строки базы данных переменной.
В #2 конвертировать #1 в объективный массив (result_array
объективный массив, представленный этим).
В #3 верните результат контроллеру.
Использование $this->db
сослаться на вашу связь с БД
$query = $this->db->query("
YOUR QUERY HERE
");
Никто действительно не ответил на вопрос. Вопрос ясен: как утилизировать соединение с базой данных codeigniter для использования с нативным mysqli_query
функция без использования mysqli_connect
снова. Вышеприведенные ответы не помогают каким-либо образом на вопрос эмитента.
использование $this->db->conn_id
в качестве ссылки на соединение с базой данных в вашем $alreadyconn
переменная.
Для вставки данных в базу данных вам не нужно использовать функцию MySQL в воспламенителе кода. Вы должны использовать
$this->db->insert()
функция для хранения данных в базе данных. Для получения дополнительной помощи, пожалуйста, посетите https://www.formget.com/insert-data-into-database-using-codeigniter/ Спасибо.