Перейти к содержанию

Как подключить внешнюю базу данных Invesion Community 4.1.17


Рекомендуемые сообщения

Я хочу подключить базу данных к своему форуму, мне нужно вытащить данные из этой базы в postContainer. Кто-нибудь может мне помочь?

Ссылка на комментарий
Поделиться на другие сайты

19 минут назад, Morphe сказал:

Я хочу подключить базу данных к своему форуму, мне нужно вытащить данные из этой базы в postContainer. Кто-нибудь может мне помочь?

Подключиться к внешней какой-то бд?

Ссылка на комментарий
Поделиться на другие сайты

1 minute ago, Exception said:

Подключиться к внешней какой-то бд?

На самом деле я хочу подключиться к внешней базе данных, я впервые использую invesion community и не знаю, как это сделать. Можете ли вы помочь мне с этим?

Ссылка на комментарий
Поделиться на другие сайты

3 минуты назад, Morphe сказал:

На самом деле я хочу подключиться к внешней базе данных, я впервые использую invesion community и не знаю, как это сделать. Можете ли вы помочь мне с этим?

Без знаний php и как устроен ips ничего не получится. Как минимум придется расширять классы (плагином) чтобы подключиться к бд или инклудить файл в шаблон

Ссылка на комментарий
Поделиться на другие сайты

5 minutes ago, Exception said:

Без знаний php и как устроен ips ничего не получится. Как минимум придется расширять классы (плагином) чтобы подключиться к бд или инклудить файл в шаблон

Я знаю php, просто раньше не работал с IPS. Я могу работать с собственными данными IPS, у меня нет проблем с этим.
Мне просто нужно обеспечить другое подключение к базе данных и получить доступ к ней.
 

Ссылка на комментарий
Поделиться на другие сайты

try
{
  $db = \IPS\Db::i( 'host', array(
      'sql_port' => 'port',
      'sql_user' => 'user',
      'sql_pass' => 'pass',
      'sql_database' => 'database',
      'sql_tbl_prefix' => 'prefix',
      'sql_utf8mb4' => TRUE
      ) );
  $data = $db->select( '*', 'table_name', array( 'row=?', 'value' ) );
}
catch ( \Exception $e )
{
	// bump ;(
}

 

Ссылка на комментарий
Поделиться на другие сайты

21 minutes ago, Exception said:
try
{
  $db = \IPS\Db::i( 'host', array(
      'sql_port' => 'port',
      'sql_user' => 'user',
      'sql_pass' => 'pass',
      'sql_database' => 'database',
      'sql_tbl_prefix' => 'prefix',
      'sql_utf8mb4' => TRUE
      ) );
  $data = $db->select( '*', 'table_name', array( 'row=?', 'value' ) );
}
catch ( \Exception $e )
{
	// bump ;(
}



Я создал соединение таким образом, как мне вызвать эти данные в postContainer? 
Мне нужно только это.

 

Изменено пользователем Morphe
Ссылка на комментарий
Поделиться на другие сайты

Не знаю где и что ты там создал, можно попробовать так:

{insert="$filename"}

// $filename - The filename of the PHP file to include. The output of the file is buffered and output.

 

Изменено пользователем Exception
Ссылка на комментарий
Поделиться на другие сайты

14 часов назад, Morphe сказал:

 

Спойлер
try {
    $dsn = 'mysql:host=your_host;dbname=your_dbname;charset=utf8';
    $username = 'your_username';
    $password = 'your_password';
    $options = [
        PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
        PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
        PDO::ATTR_EMULATE_PREPARES   => false,
    ];

    $pdo = new PDO($dsn, $username, $password, $options);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
    exit;
}

$stmt = $pdo->query('SELECT * FROM your_table');
$results = $stmt->fetchAll();

foreach ($results as $row) {
    $postContent = $row['your_column'];
    
    // Подставьте ваши значения для $topicId и $authorId
    $topicId = 1;
    $authorId = 1;

    $topic = \IPS\forums\Topic::load($topicId);
    $post = \IPS\forums\Topic\Post::create([
        'topic'         => $topic,
        'author'        => \IPS\Member::load($authorId),
        'post'          => $postContent,
        'post_date'     => time(),
    ]);

    $post->save();
}

 

Попробуйте так, это пример кода который подключается к внешней базе данных, получает данные и вставляет их в postContainer

Изменено пользователем alxbelarus
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...