Перевожу сайт с подключения mysqli на pdo. Как заменить данный запрос и цикл на pdo?

Разрабатываю интернет-магазин на OpenServer.
Вот таблица из базы данных https://i.imgur.com/vP3t8gK.png
Вот код из файла с подключением к базе данных:

$host = 'localhost';
$user = 'root';
$pass = '';
$db_name = 'shop';

$conn = new mysqli($host, $user, $pass, $db_name);

if ($conn->connect_error) {
    die('Database connection error: ' . $conn->connect_error);
}

Вот цикл вывода товара:

$result =  mysqli_query($conn, "SELECT * FROM  `products` WHERE `visible`='1' ORDER BY $sorting $qury_start_num");
    if (mysqli_num_rows($result) > 0) {
        $row = mysqli_fetch_array($result);
            do {
                if ($row["image"] != "" && file_exists("./upload_images/" . $row["image"])) {
                   $img_path = './upload_images/' . $row["image"];
                   $max_width = 150;
                   $max_height = 150;
                   list($width, $height) = getimagesize($img_path);
                   $ratioh = $max_height / $height;
                   $ratiow = $max_width / $width;
                   $ratio = min($ratioh, $ratiow);
                   $width = intval($ratio * $width);
                   $height = intval($ratio * $height);
                   } else {
                       $img_path = "/images/no-image.png";
                       $width = 200;
                       $height = 200;
                   }
                   echo ('
                   <li>
                   <div class="block-images-grid">
                       <img src ="' . $img_path . '" width="' . $width . '" height="' . $height . '" />
                   </div>
                   <p class="style-title-grid"><a href="view_content.php?id='.$row["products_id"].'">' . $row["title"] . '</a></p>
                   <ul class="revievs-and-counts-grid">
                   <li><img src="/images/eye-icon.png" /><p>0</p></li>
                   <li><img src="/images/comment-icon.png" /><p>0</p></li>
                   </ul>
                   <a class="add-cart-style-grid" tid="'.$row["products_id"].'"></a>
                   <p class="style-price-grid"><strong>' . group_numerals($row["price"]) . '</strong> руб.</p>
                   <div class="mini-features">
                   ' . $row["mini_features"] . '
                   </div>
                   </li>
                   ');
                   } while ($row = mysqli_fetch_array($result));
                }

Вот так товар выводится на странице https://i.imgur.com/xyjb6Wp.png
Вот, что я пытался реализовать через pdo:
Вот код из файла с подключением к базе данных:

$host = 'localhost';
$user = 'root';
$pass = '';
$db_name = 'shop';
$conn = new PDO("mysql:host=$host;dbname=$db_name", $user, $pass);

Вот цикл:

$result = $conn->query("SELECT * FROM `products` WHERE `visible`=1");
                while($row = $result->fetch()) {
                    do {

                        if ($row["image"] != "" && file_exists("./upload_images/" . $row["image"])) {
                            $img_path = './upload_images/' . $row["image"];
                            $max_width = 150;
                            $max_height = 150;
                            list($width, $height) = getimagesize($img_path);
                            $ratioh = $max_height / $height;
                            $ratiow = $max_width / $width;
                            $ratio = min($ratioh, $ratiow);
                            $width = intval($ratio * $width);
                            $height = intval($ratio * $height);
                        } else {
                            $img_path = "/images/no-image.png";
                            $width = 200;
                            $height = 200;
                        }
                        echo ('
                    <li>
                    <div class="block-images-grid">
                        <img src ="' . $img_path . '" width="' . $width . '" height="' . $height . '" />
                    </div>
                    <p class="style-title-grid"><a href="view_content.php?id='.$row["products_id"].'">' . $row["title"] . '</a></p>
                    <ul class="revievs-and-counts-grid">
                    <li><img src="/images/eye-icon.png" /><p>0</p></li>
                    <li><img src="/images/comment-icon.png" /><p>0</p></li>
                    </ul>
                    <a class="add-cart-style-grid" tid="'.$row["products_id"].'"></a>
                    <p class="style-price-grid"><strong>' . group_numerals($row["price"]) . '</strong> руб.</p>
                    <div class="mini-features">
                    ' . $row["mini_features"] . '
                    </div>
                    </li>
                    ');
                    } while($row = $result->fetch());
                }

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