0

Есть БД FireBird, в ней есть строка с данными. Есть РНР+PDO код, который обрабатывает запрос выборки данных из таблицы БД FireBird, проблема в том, что все работает, но не выводит строку из таблицы. Помогите, очень нужно...

<?php

$dsn = 'firebird:dbname=/var/databases/test_db.fdb;charset=utf8;'; $username = 'SYSDBA'; $password = 'masterkey';

    try {
        $fire_conn = new PDO($dsn, $username, $password, [PDO::ATTR_ERRMODE =&gt; PDO::ERRMODE_EXCEPTION]);

    } catch (PDOException $e) {
        echo $e-&gt;getMessage();
    }

$curr_date = date('d.m.Y');

echo "<br> Список того, что купить " . $curr_date . " числа!" ;

$sql = "Select name_product, amount_product, price, cost from shopping where date_buy = :date;";

$result = $fire_conn->prepare($sql); $result ->bindParam(':date', $curr_date); $result->execute();

echo "<table border='1'>"; echo "<tr> <th>Название продукта</th> <th>Количество</th> <th>Цена</th> <th>Стоимость</th> </tr>";

while ($row = $result->fetch(PDO::FETCH_ASSOC)) { echo "<tr><td>".$row['name_product']."</td>"; echo "<td>".$row['amount_product']."</td>"; echo "<td>".$row['price']."</td>"; echo "<td>".$row['cost']."</td></tr>"; }

echo "</table>";

?>

Undefined array key "cost" in /var/www/html/StudyPHP/Result.php on line 37

К name_product amount_product price такая же ошибка

Пробовал погуглить, но что-то подобных тем не нашел...

u_mulder
  • 3,602
Dan
  • 1
  • Что показывает print_r($row)? – u_mulder Jun 26 '23 at 08:37
  • 1
    Вот за тебя погуглил - https://ru.stackoverflow.com/questions/1364090/%d0%a7%d1%82%d0%be-%d0%be%d0%b7%d0%bd%d0%b0%d1%87%d0%b0%d0%b5%d1%82-%d1%8d%d1%82%d0%b0-%d0%be%d1%88%d0%b8%d0%b1%d0%ba%d0%b0-parse-syntax-warning-fatal – u_mulder Jun 26 '23 at 08:38
  • 1
    в файле логов писало, что не знает столбцы name_product, amount_product, price, cost. Исправил эту ошибку путем написание имен столбцов капсом, т.к. РНР чувствителен к регистру. – Dan Jun 30 '23 at 09:24

1 Answers1

0

проблема решена, именя столбцов нужно было написать так: $row['ИМЯ_СТОЛБЦА']

Dan
  • 1