Небольшая проблема с отображением данных с локального сервера в таблице html с php и sql

Сегодня у меня небольшая проблема, с элементарной и, может быть, забавной вещью. Сегодня я хотел сделать таблицу с данными с сервера sql. Для этого я использую Xampp для этого и, возможно, очень часто выбираю для этого. Проблема с таблицей, потому что я пытался отобразить данные с помощью своих идей, а мои знания и результаты, возможно, больше, чем то, что я хочу сделать, просто может быть. Ниже мои скрипты и хочу отметить, что я делаю несколько версий скриптов и здесь это только одна из них.

HTML + PHP-таблица

    <div class = "centred-container table">
        <table class = "table-results">
            <tr class = "tr-table">
                <th class = "th-table th-univ">Product name</th>
                <th class = "th-table th-univ">Cod PLU</th>
                <th class = "th-table th-univ">Cod Intern</th>
                <th class = "th-table th-univ">Cod EAN/Bare</th>
                <th class = "th-table th-univ">Unitate</th>
                <th class = "th-table th-univ">Pret</th>
                <th class = "th-table th-univ">Stoc</th>
            </tr>
            <tr class = "tr-table">
              <?php
              
                while ($row = mysqli_fetch_assoc($result)) {
                    $nameP = $row["ProductName"];
                    $PLUP = $row["ProductPLU"];
                    $ICP = $row["ProductIC"];
                    $EANP = $row["ProductEAN"];
                    $UnitP = $row["ProductUnit"];
                    $PriceP = $row["ProductPrice"];
                    $StockP = $row["ProductStock"];

                    echo"<td>".$nameP."</td>
                        <td>".$PLUP."</td>
                        <td>".$ICP."</td>
                        <td >".$EANP."</td>
                        <td >".$UnitP."</td>
                        <td >".$PriceP."</td>
                        <td >".$StockP."</td> <br>";
                }
              ?>
        </table>
    </div>

PHP-часть

if (isset($_POST["submit"])) {
    session_start();

    include_once 'includes/dbh.inc.php';

    $codePLU = $_POST["productPLU"];
    $codeEAN = $_POST["productEAN"];
    $codeIC = $_POST["productIC"];

    $sql = "SELECT * FROM products WHERE ProductPLU ='$codePLU' OR ProductEAN = '$codeEAN' OR ProductIC = '$codeIC';";
    $result = mysqli_query($conn, $sql);
    
    }

?>

Здесь я хочу отображать (SELECT) данные из базы данных и отображать их в таблице html. Проблема в том, что я пробовал метод с <td><?php echo $variable ?></td>, где $varable = $row["column_name"], и в этой ситуации все мои данные, возможно, только первая или последняя или только одна строка, где должно было быть больше, потому что я знаю, что мой запрос sql имеет больше результатов (строк), чем одна строка Я понимаю. С вставленными сценариями все мои строки возвращаются запросом sql, но все строки находятся в одной строке, и я хочу, чтобы все они были в классической таблице. Мне нужна небольшая помощь для моей маленькой проблемы. Я знаю, что это просто основная проблема на сайте php, но мне нужен от вас какой-то случай или результаты, где я хочу попытаться сделать свою таблицу классической таблицей без ошибок, таких же, как мои ошибки выше.

Извините за мой английский.

Ваш скрипт открыт для атаки SQL-инъекцией . Даже если вы убегаете от ввода, это небезопасно! Вы всегда должны использовать подготовленные параметризованные операторы либо в MYSQLI_, либо в PDO API вместо того, чтобы объединять предоставленные пользователем значения в запрос. Никогда не доверяйте ЛЮБОМУ вводу пользователя! Это также устранит проблему с неэкранированными символами, такими как ', в текстовой строке, например `O'Neal'.

RiggsFolly 10.02.2023 18:07

@RiggsFolly Я буду работать над вашими наблюдениями

AnoDev DevJunior 10.02.2023 18:36
Стоит ли изучать 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 и хотите разрабатывать...
3
2
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Проблема с вашей таблицей HTML. Нужно открывать и закрывать каждую строку (<tr>) в цикле while. код ниже

<table class = "table-results">
            <tr class = "tr-table">
                <th class = "th-table th-univ">Product name</th>
                <th class = "th-table th-univ">Cod PLU</th>
                <th class = "th-table th-univ">Cod Intern</th>
                <th class = "th-table th-univ">Cod EAN/Bare</th>
                <th class = "th-table th-univ">Unitate</th>
                <th class = "th-table th-univ">Pret</th>
                <th class = "th-table th-univ">Stoc</th>
            </tr>
              <?php
                while ($row = mysqli_fetch_assoc($result)) {
                    $nameP = $row["ProductName"];
                    $PLUP = $row["ProductPLU"];
                    $ICP = $row["ProductIC"];
                    $EANP = $row["ProductEAN"];
                    $UnitP = $row["ProductUnit"];
                    $PriceP = $row["ProductPrice"];
                    $StockP = $row["ProductStock"];

                    echo"<tr> <td>".$nameP."</td>
                        <td>".$PLUP."</td>
                        <td>".$ICP."</td>
                        <td >".$EANP."</td>
                        <td >".$UnitP."</td>
                        <td >".$PriceP."</td>
                        <td >".$StockP."</td> </tr>";
                }
              ?>
        </table>

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