Пока цикл повторяет одни и те же данные

0

Я пытаюсь извлечь данные из моей БД с помощью цикла while. Код вытягивает правильное количество строк SQL, однако он повторяет одну и ту же запись снова и снова.

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

    <?php 
    $sql = "SELECT * FROM grow_details";
    $query = $conn->query($sql);

       $grows = array();
       while ($grow = mysqli_fetch_assoc($query)) {
           $grows[] = $grow;
       } 
       foreach($grows as $grow) {
    ?>
    <div>
        <h2><?php echo $name; ?></h2>
        <table>
            <tr>
                <td><label for="datePlanted">Date Planted:</label></td>
                <td><?php echo $datePlanted; ?></td>
            </tr>
            <tr>
                <td><label for="strain">Strain:</label></td>
                <td><?php echo $strain; ?></td>
            </tr>
            <tr>
                <td><label for="toMaturity">Days to mature:</label></td>
                <td><?php echo $toMaturity; ?></td>
            </tr>
            <tr>
                <td><label for="type">Type:</label></td>
                <td><?php echo $type; ?></td>
            </tr>
            <tr>
                <td><label for="gender">Gender:</label></td>
                <td><?php echo $gender; ?></td>
            </tr>
            <tr>
                <td><label for="medium">Medium:</label></td>
                <td><?php echo $medium; ?></td>
            </tr>
        </table>
    </div>
    <?php 
        }
?>

Выходы:

T3
Date Planted:   12/20/2017
Strain:     Kiwi
Days to mature:     50
Type:   ?
Gender:     ?
Medium:     Aero
<br>
T3
Date Planted:   12/20/2017
Strain:     Kiwi
Days to mature:     50
Type:   ?
Gender:     ?
Medium:     Aero
<br>
T3
Date Planted:   12/20/2017
Strain:     Kiwi
Days to mature:     50
Type:   ?
Gender:     ?
Medium:     Aero
Теги:
database
arrays
syntax

1 ответ

3
Лучший ответ

Вы не используете ничего из массива, который вы повторяете в цикле. Вы просто печатаете одинаковые переменные $name, $datePlanted и т.д. Каждый раз. echo $name должно быть echo $grow['name'] и аналогично для всех других переменных.

  • 0
    Бармар, спасибо, я попробую и дам знать, что я придумаю.
  • 0
    Это сработало блестяще. Большое спасибо.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню