Как найти информацию в строке по ID?

Я совсем новичок в mysql и php, и у меня возникла с выводом данных в моей таблице. Допустим, у меня уже есть готовая таблица buyorders вида:

order_id order_desc order_amount

1 покупка тестового товара 1999

order_id - id моего заказа, order_desc - описание заказа, order_amount - цена заказа. Как найти по id заказа строку, и занести order_desc в $description, а order_amount в $amount?

Пробовал вариант:

<?php
$order_id;
$order_desc;
$order_amount;

$connect = mysqli_connect('localhost','root','пароль','orders');

if(isset($_GET["id"])){
  
    $order_id = $_GET["id"];
}

$result = $connect->query("SELECT `order_amount` FROM `buyorders` WHERE `order_id` = '{$order_id}'");
$result = mysqli_fetch_array($result);
echo $result;

id в данном случае берется из поисковой строки, и вносится в переменную, но данный метод не работает! Выдаёт следующую ошибку

Array to string conversion in /var/www/сайт.site/pay/test.php on line 18 Array


Ответы (1 шт):

Автор решения: Константин Бронштейн

mysqli_fetch_array() возвращает массив в котором каждый элемент это строка из базы данных и является массивом колонок из это строки, где ключ массива это имя колонки указанной в SELECT запроса, а значение - значение этой колонки.

Поэтому можно сделать так:

<?php
$order_id;
$order_desc;
$order_amount;

$connect = mysqli_connect('localhost','root','пароль','orders');

if(isset($_GET["id"])){
  
    $order_id = $_GET["id"];
}

$result = $connect->query("SELECT `order_amount`, `order_desc`, FROM `buyorders` 
WHERE `order_id` = '{$order_id}'");
$result = mysqli_fetch_array($result);
$order_desc = $result[0]['order_desc'];
$order_amount = $result[0]['order_amount'];
echo $result;
→ Ссылка