PHP не возвращает эхо - PullRequest
       3

PHP не возвращает эхо

0 голосов
/ 22 ноября 2018

У меня есть таблица, которая отображает список книг из базы данных mysql и форму поиска, где пользователь может искать книги.Я с нетерпением жду, чтобы отобразить список книг по названию и автору, когда пользователь ищет по введенному значению заголовка и автора и отобразит «НЕТ Книг по имени или автору» как эхо, когда нет записи.

Мой код

<!DOCTYPE HTML>
<html>
    <body bgcolor="87ceeb">
        <center><h2>Central Department of Physics</h2></center>
        <br>
        <?php
        include("DBConnection.php");
        $search = isset($_REQUEST["search"]) ?  $_REQUEST["search"] : '';

        $query = "select ISBN,Title,Author,Edition,Publication from book_info where author like '%$search%' or title like '%$search%'"; 
        //search with a book name in the table book_info
        $result = mysqli_query($db,$query);


        ?>
        <a href="searchform.php" class="btn btn-primary">Go Back</a>
        <table border="2" align="center" cellpadding="5" cellspacing="5">
            <tr>
                <th> ISBN </th>
                <th> Title </th>
                <th> Author </th>
                <th> Edition </th>
                <th> Publication </th>
            </tr>
            <?php 
            if(mysqli_num_rows($result)>0){
                while($row = mysqli_fetch_assoc($result))
                {
            ?>
                <tr>

                    <td><?php echo $row["ISBN"];?> </td>
                    <td><?php echo $row["Title"];?> </td>
                    <td><?php echo $row["Author"];?> </td>
                    <td><?php echo $row["Edition"];?> </td>
                    <td><a href="<?php  echo $row["Publication"];?>" target="_blank">Click Me</a></td>

                </tr>

            <?php

                }

            }
            else{ ?>
                <tr>
                    <td colspan="5">
                        <center>No books found in the library by the name $search </center>
                    </td>
                </tr>

        <?php } ?>
        </table>
        
    </body>
</html>
<br>

Моя форма поиска

<!DOCTYPE HTML>
<html>
<body bgcolor="87ceeb">

<form action = "DisplayBooks.php" method="get">
<br>
<center>Enter the title of the book to be searched :
<input type="text" name="search" size="48">
<br></br>
<input type="submit" value="submit">
<input type="reset" value="Reset">
</center>
<br>
</form>
</body>
</html>

Но он успешно отображает список книг, но при отсутствии какой-либо записи ... он не запускает эхо.

пс.Как добавить кнопку ссылки, чтобы она показывала «Назад к результатам поиска», чтобы перейти к форме поиска, и пользователь может вернуться к предыдущей форме.

Ответы [ 2 ]

0 голосов
/ 22 ноября 2018

Попробуйте:

<!DOCTYPE HTML>
<html>
    <body bgcolor="87ceeb">
        <center><h2>Central Department of Physics</h2></center>
        <br>
        <?php
        include("DBConnection.php");
        $search = isset($_REQUEST["search"]) ?  $_REQUEST["search"] : '';

        $query = "select ISBN,Title,Author,Edition,Publication from book_info where author like '%$search%' or title like '%$search%'"; 
        //search with a book name in the table book_info
        $result = mysqli_query($db,$query);


        ?>
        <table border="2" align="center" cellpadding="5" cellspacing="5">
            <tr>
                <th> ISBN </th>
                <th> Title </th>
                <th> Author </th>
                <th> Edition </th>
                <th> Publication </th>
            </tr>
            <?php 
            if(mysqli_num_rows($result)>0){
                while($row = mysqli_fetch_assoc($result))
                {
            ?>
                <tr>

                    <td><?php echo $row["ISBN"];?> </td>
                    <td><?php echo $row["Title"];?> </td>
                    <td><?php echo $row["Author"];?> </td>
                    <td><?php echo $row["Edition"];?> </td>

                    <td><a href="<?php  echo $row["Publication"];?>" target="_blank">Click Me</a></td>
                </tr>

            <?php

                }

            }
            else{ ?>
                <tr>
                    <td colspan="5">
                        <center>No books found in the library by the name $search </center>
                    </td>
                </tr>

        <?php } ?>
        </table>
    </body>
</html>
<br>
0 голосов
/ 22 ноября 2018

Вы продублировали свой чек на "нет результатов":

if(mysqli_num_rows($result)>0)if(mysqli_num_rows($result)>0)

Удалите один.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...