Как я могу использовать соединение с базой данных уже подключенной базы данных в 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 в качестве драйвера БД.


Как подключить базу данных??

Есть три способа заархивировать это

  1. Gobally - (путь - application/config/autoload.php)

    $autoload['libraries'] = array('database');
    
  2. Только в классе.

    class ClassName extends CI_Model 
    {
        public function  __construct()
        {
            parent::__construct();
            $this->load->database();
        } 
    }
    

    Можно использовать во всех методах, добавленных в этот класс

  3. Только внутри методов. (В основном только на контроллерах)

    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/ Спасибо.

Другие вопросы по тегам