Вопрос Запись в другую БД

Тема в разделе "Программирование", создана пользователем Ak47, 24.11.2016.

  1. Offline

    Ak47 Пользователь

    Регистрация:
    24.10.2009
    Сообщения:
    104
    Симпатии:
    0
    Пол:
    Мужской
    Возникла необходимость на одной страничке осуществлять запись в чужую БД, на этом же сервере. там конечно нет никаких API, дали просто логин и пароль от пользователя БД.
    Решил не мудрить и просто сделать альтернативный макет странички для записи: немного стандартного контента, и снизу - дописанный код формы, а также обработчик для этой формы, но столкнулся с проблемой: видимо, джумла как-то блокирует подключения к другим БД.
    Поначалу подключился как обычно, mysqli_connect();, ошибок подключения не выдавало. Потом заметил что mysqli_real_escape_string не работает, mysqli_query тоже не работали.
    Пробовал в конфиге менять public $dbtype = 'mysqli' на public $dbtype = 'pdomysql', отличий никаких.

    Что делать? формально подключение к бд есть, фактически - нет.
     
  2.  
  3. Offline

    Ak47 Пользователь

    Регистрация:
    24.10.2009
    Сообщения:
    104
    Симпатии:
    0
    Пол:
    Мужской
    ответ: пользоваться головой и гуглом

    Код (PHP):
    1. <?php
    2. $options = array();
    3. $options['driver']  = 'mysql';     // Имя драйвера
    4. $options['host']   = 'db.host.ru';  // Адрес хоста
    5. $options['user']   = 'someuser';   // Имя пользователя
    6. $options['password'] = 'somepassword'; // Пароль
    7. $options['database'] = 'somedb';    // Имя базы данных
    8. $options['prefix']  = 'abc_';     // Префикс таблиц (может быть пустым)
    9. $db = JDatabase::getInstance($options);
    10. ?>

    и вот уже в $db - новая база данных, пользоваться ею можно стандартными функциями джумлы.
     

Поделиться этой страницей

Загрузка...