PHP Pervasive SQL-соединение

Я подключаю PHP к Pervasive SQL, и соединение продолжает сбрасываться

Это соединение находится в Windows Server 2012 с использованием PHP7 в Apache 2.4. Я уже создал DNS-соединение, и тест может успешно подключиться к базе данных.

<?php
  $conn=odbc_connect("brps","","");
   if (!$conn) die("Could not connect");
?>

Какую версию Pervasive вы используете? Какая именно ошибка?

mirtheil 09.01.2019 18:04

PSQL версии 11

Kwasi Owusu 09.01.2019 18:06

Возможно, вы захотите отредактировать свой вопрос, чтобы указать точную ошибку, а также версию Pervasive.

mirtheil 09.01.2019 18:52

это не дает ошибок. Страница не загружается. Мое приложение подключается как к MySQL, так и к Pervasive. Когда я комментирую повсеместное соединение, страница загружается нормально. Но когда я добавляю повсеместное соединение, страница сбрасывается, время ожидания истекает или не загружается без ошибок.

Kwasi Owusu 09.01.2019 18:55

Если он не подключается, он должен выдать ошибку. Что дает ваша страница, так это то, что у вас есть только это: <?php $conn=odbc_connect("brps","",""); ?>

mirtheil 09.01.2019 19:27

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

Kwasi Owusu 10.01.2019 02:35
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
6
492
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Следующий код работает для меня в среде x64 с использованием PHP 7.31 с расширением ODBC, включенным в PHP.INI. Я также использую клиент v11.30 x64, подключающийся к удаленному серверу PSQL v11.

<?php
  $conn=odbc_connect("brpp","","");
   if (!$conn) die("Could not connect");
$result = odbc_tables($conn);

echo '<div id = "top">..</div><table border = "1" cellpadding = "5"><tr>';

$tblRow = 1;
while (odbc_fetch_row($result)){
  if (odbc_result($result,"TABLE_TYPE")= = "TABLE"){
    $tableName = odbc_result($result,"TABLE_NAME");
    echo '<tr><td>' . $tblRow . '</td><td><a href = "#' . $tableName . '">' . $tableName . '</a></td></tr>';
    $tblRow++;
  }  
}
echo '</table><hr>';

$result = odbc_tables($conn);

while (odbc_fetch_row($result)){
  if (odbc_result($result,"TABLE_TYPE")= = "TABLE"){
    $tableName = odbc_result($result,"TABLE_NAME");

    echo '<div id = "' . $tableName . '"> *** ' . $tableName . ' *** <a href = "#top">top</a></div>';

    $cols = odbc_exec($conn, "SELECT * FROM $tableName WHERE 1=2");
    $ncols = odbc_num_fields($cols);

    for ($n=1; $n<=$ncols; $n++) {
      $field_name = odbc_field_name($cols, $n);
      echo $field_name . "<br>";
    }    
    echo '<hr>';
  }
}
?>

Если DSN не существует, я получаю сообщение об ошибке:

    Warning: odbc_connect(): SQL error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified, SQL state IM002 in SQLConnect in C:\Wnmp\html\phpodbc.php on line 2
Could not connect

После установки клиента PSQL x64 я получал системную ошибку 998. Эту ошибку исправила перезагрузка машины.

благодаря. после перезапуска сервера все работает нормально

Kwasi Owusu 11.01.2019 11:53

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