Таблицы данных не могут считывать более одного потока данных

#php #mysql #datatables

#php #mysql #datatables

Вопрос:

Я хотел бы спросить, почему DataTable не может прочитать более 1 данных в моей базе данных? Я был бы признателен за любую помощь, поскольку я относительно новичок в таблице данных, спасибо.

Как вы можете видеть, он показывает только от 1 до 1 из 1 записей. Но, как видно из таблицы, у меня есть 5 извлеченных данных.

и когда я пытаюсь выполнить поиск в строке поиска, это отображается. введите описание изображения здесь

Вот код для таблицы.

 <table class="table table-striped table-hover table-condense" id="tbl_research">
                <thead>
                    <tr>
                    <th scope="col">#</th>
                    <th scope="col">Resarch Title</th>
                    <th scope="col">Research Type</th>
                    <th scope="col">Research Author</th>
                    <th scope="col">Action</th>
                    </tr>
                </thead>
                <tbody>
                    <tr>
                    <?php
                    include 'includes/connection_operation.php';
                    $sql = "SELECT * FROM tbl_repository";
                    $query = mysqli_query($conn,$sql);

                    if($query)
                    {
                        while($row = mysqli_fetch_assoc($query))
                        {
                            ?>
                    <th><?php echo $row['ID']; ?></th>
                    <td><?php echo $row['research_title']; ?></td>
                    <td><?php echo $row['research_type']; ?></td>
                    <td><?php echo $row['research_author']; ?></td>
                    <td>
                        <input type="submit" name="submit" id="submit" value="View" class="btn btn-info" 
                        data-toggle="modal" data-target="#viewResearchModal<?php echo $row["ID"];?>">
                    </td>
                    </tr>
                </tbody>
                
                <?php 
                include './helper/modal_viewresearch.php';
                    }
                }
                ?>
                </table>
 

Вот мой код для моих плагинов / cdn

 <!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <title>CRR | View Research</title>
    
    <!-- Bootstrap CSS CDN -->
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" integrity="sha384-9gVQ4dYFwwWSjIDZnLEWnxCjeSWFphJiwGPXr1jddIhOegiu1FwO5qRGvFXOdJZ4" crossorigin="anonymous">
    <!-- Our Custom CSS -->
    <link rel="stylesheet" href="css/style.css">
    <link rel="stylesheet" href="https://cdn.datatables.net/1.10.23/css/jquery.dataTables.min.css">
    

    <!-- Font Awesome JS -->
    <script defer src="https://use.fontawesome.com/releases/v5.0.13/js/solid.js" integrity="sha384-tzzSw1/Vo 0N5UhStP3bvwWPq uvzCMfrN1fEFe xBmv1C/AtVX5K0uZtmcHitFZ" crossorigin="anonymous"></script>
    <script defer src="https://use.fontawesome.com/releases/v5.0.13/js/fontawesome.js" integrity="sha384-6OIrr52G08NpOFSZdxxz1xdNSndlD4vdcf/q2myIUVO0VsqaGHJsB0RaBE01VTOY" crossorigin="anonymous"></script>
</head>

<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js" integrity="sha384-cs/chFZiN24E4KMATLdqdvsezGxaGsi4hLGOzlXwp5UZB1LY//20VyM2taTB4QvJ" crossorigin="anonymous"></script>
    <!-- Bootstrap JS -->
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js" integrity="sha384-uefMccjFJAIv6A rW L4AHf99KvxDjWSu1z9VI8SKNVmz4sk7buKt/6v9KI65qnm" crossorigin="anonymous"></script>
    <script src="https://code.jquery.com/jquery-3.5.1.js"></script>
    <script src="https://cdn.datatables.net/1.10.23/js/jquery.dataTables.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $('#sidebarCollapse').on('click', function () {
                $('#sidebar').toggleClass('active');
            });
        });
    </script>
    <script>
        $(document).ready(function() {
        $(function () {
            $('[data-toggle="popover"]').popover()
        });

        $(function () {
            $('[data-toggle="tooltip"]').tooltip()
        })
        });
    </script>
    <script>
        $(document).ready(function() {
        $('#tbl_research').DataTable( {
        } );
    } );
    </script>
</body>

</html>
 

Ответ №1:

Мне пришлось перечитывать весь свой код 3 раза, и причина, по которой он показывает только 1, заключается в том, что tbody находился внутри цикла, поэтому он видит только 1. Мне пришлось переместить его за пределы цикла while, чтобы данные были в одном tbody спасибо.