Подключение PHP к базе данных Firebird

Я новичок в php.

Я пытаюсь написать простой внутренний веб-сайт, который просматривает номер вакансии, введенный пользователем, и возвращает клиента, если он существует. (Проверка, если хотите).

Он работает, когда WAMP установлен на ПК с помощью драйвера Windows ODBC для firebird. Но когда выделенный Linux-сервер был настроен с использованием модуля php5-interbase - interbase / firebird для php5, он не работал. Ошибок нет, просто очищает экран.

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

<?php
error_reporting(0); 
$jobNumber = $_POST['jobNumber'];

if ($_POST['clear'])
{
    $jobNumber = "";
    $message1 = "";
}
if ($_POST['enquire']) 
{
    $dsn = 'DSN=Ostendo Wyma;Driver = {Firebird/InterBase(r) driver};Dbname=//Orcus/C:/Program Files (x86)/Ostendo/Database/Ostendo.fdb;CHARSET=NONE;UID=SYSDBA;' ;
    $dbh = odbc_connect($dsn, '', '') ;
    $sqlstr = "SELECT (CUSTOMER || ' ' || ORDERDESCRIPTION) AS " .'"Result"' . " FROM JOBHEADER WHERE ORDERNUMBER = '" .$jobNumber ."' AND ORDERSTATUS <> 'Closed'" ;
    $sqlstr .= ' UNION ';
    $sqlstr .= "SELECT ITEMDESCRIPTION AS " .'"Result"' . " FROM ASSEMBLYHEADER WHERE ORDERNUMBER = '" .$jobNumber ."' AND ORDERSTATUS <> 'Closed'";
    $sth = odbc_exec($dbh, $sqlstr) ;
    $t = odbc_fetch_row($sth) ;
    $result = odbc_result($sth, 'Result') ;
    $message1 = $jobNumber . " Returns " .$result;
}
?>
<html>
<style>
    body 
    {
        font-family:arial;
        font-size:12;
    }
</style>
<title>Ostendo Test</title>
<form action = "" method = "POST">
    <body>
        <table border = 3>
            <tr>
                <td> Assembly/Job Number: </td>
                <td> <input type=text name=jobNumber value = "<?php echo $jobNumber;?>" size = "50" autofocus>
            </tr>
        <tr>
            <td colspan = 3>
                <input type = "submit" name = "enquire" value = "Validate">
                <input type = "submit" name = "clear" value = "Clear">
            </td>
        </tr>
    </table>
</form>
<?php
echo "<br><br>";
echo "<font face='arial' size='4'>";
echo $message1;
echo "</font>";
?>   
</body>
</html>

Я отключил отчеты об ошибках (т.е. изменил 0 на 1) и никаких сообщений об изменениях или ошибках. Затем я полностью удалил строку, и снова никаких изменений или сообщений об ошибках.

Я включил обработку ошибок PHP и при обновлении страницы получил следующее:

Notice: Undefined index: jobNumber in /var/www/Enquire.php on line 2
Notice: Undefined index: clear in /var/www/Enquire.php on line 4
Notice: Undefined index: enquire in /var/www/Enquire.php on line 9

(Затем под полями / таблицей я получил следующие сообщения об ошибках)

Notice: Undefined variable: message1 in /var/www/Enquire.php on line 49

Это заставляет меня думать, что я неправильно объявил некоторые переменные. ?

Когда я ввожу действительную ссылку на вакансию, я получаю следующее:

Примечание: неопределенный индекс: очистить в /var/www/Enquire.php в строке 4

Неустранимая ошибка: вызов неопределенной функции odbc_connect () в /var/www/Enquire.php в строке 12

Думаю, это связано с тем, как я подключаюсь к базе данных FB.

Почему бы не использовать расширение firebird? php.net/manual/en/book.ibase.php

Anthony 02.05.2018 06:19

И не используйте теги <font>. Если вы новичок в этом, избавьтесь от этой привычки прямо сейчас, пока еще рано.

Anthony 02.05.2018 06:21

Если он "просто очищает экран", это похоже на фатальную ошибку php. Отличная причина не отключать отчеты об ошибках в верхней части скрипта.

Anthony 02.05.2018 07:35

Включите отчет об ошибках (или не отключайте его, как сейчас) и добавьте сообщение об ошибке в свой вопрос.

Mark Rotteveel 02.05.2018 10:07

Я добавил сообщения об ошибках выше. Теперь я пытаюсь заменить ссылки ODBC на ibase, и, похоже, он работает, поскольку при изменении каждой ссылки ODBC появляются разные ошибки.

Simon King 03.05.2018 05:17
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать 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 и хотите разрабатывать...
0
5
617
0

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