为什么我的搜索结果在搜索表单下不可见?

时间:2017-04-06 12:05:51

标签: php html search

希望有人能够提供帮助!

我创建了一个搜索表单,使用户能够使用名称,日期和公司搜索特定的评估日。 此搜索的结果应显示在用于生成搜索的表单下方。但是,目前,当选择搜索按钮时,表单只刷新并且不显示任何结果? 任何人都可以建议吗?代码如下:

    <?php

if(isset($_GET['submit'])){

require_once 'connect.php';



if(isset($_GET['nameofassessmentday'])) {
if(isset($_GET['dateofassessmentday'])) {
if(isset($_GET['companyname'])) {



    $nameofassessmentday = $db-> real_escape_string($_GET['nameofassessmentday']);
    $dateofassessmentday = $db-> real_escape_string($_GET['dateofassessmentday']);
    $companyname = $db-> real_escape_string($_GET['companyname']);

    $query = $db->query ("
        SELECT Name, Company 
        FROM assessment_day_details
        WHERE Name LIKE '{$nameofassessmentday}'
        AND Company LIKE '{$companyname}'
        AND Date_of_Day = '{$dateofassessmentday}'
        ");

        }
    }
}
?>

<div class="result-count">
    Found <?php echo $query->num_rows; ?> results.
</div>

<?php

if($query-> num_rows) {
    while($r = $query->fetch_object())  {
?>      
        <div class="result">
            <a href="#"> <?php echo $r->Name; ?></a>
            <a href="#"> <?php echo $r->Company; ?></a>
        </div>
        <?php
        }
    }
?>

<!DOCTYPE html>
<html>
<head>
    <title>Assess Existing Assessment Day-Search</title>
    <link rel="stylesheet"  href="style.css">
</head>
<?php

include 'function.php';
}
?>



<body>
    <div id="form">
        <form method="get">
        <p>
        <label>Name of Assessment Day:</label>
            <input type="text" id="nameofassessmentday" name="nameofassessmentday"  required/>
            </p>
        <p>
        <label>Date of Assessment Day:</label>
            <input type="date" id="dateofassessmentday" name="dateofassessmentday" required />
            </p>
        <p>
        <label>Company Name :</label>
            <input type="text" id="companyname" name="companyname"  required/>
            </p>

        <p>
            <input type="submit" id="btn" value="Search"  />
            </p>

        </form>
    </div>

</body>

</html>

此外,还有一个问题供将来参考。无论如何我可以超链接搜索结果以转到特定页面吗?

提前致谢!

作为一些进一步的信息,在尝试将搜索结果显示在同一网页之前,我有以下两页并且它工作得很好。

<!DOCTYPE html>
<html>
<head>
    <title>Assess Existing Assessment Day-Search</title>
    <link rel="stylesheet"  href="style.css">
</head>
    <?php

    include 'function.php';

    ?>



    <body>
        <div id="form">
            <form action="search.php" method="get">
            <p>
            <label>Name of Assessment Day:</label>
                <input type="text" id="nameofassessmentday" name="nameofassessmentday"  required/>
                </p>
            <p>
            <label>Date of Assessment Day:</label>
                <input type="date" id="dateofassessmentday" name="dateofassessmentday" required />
                </p>
            <p>
            <label>Company Name :</label>
                <input type="text" id="companyname" name="companyname"  required/>
                </p>

            <p>
                <input type="submit" id="btn" value="Search"  />
                </p>

            </form>
        </div>

    </body>

    </html>

    <?php

require_once 'connect.php'; 
include 'function.php';

if(isset($_GET['nameofassessmentday'])) {
if(isset($_GET['dateofassessmentday'])) {
if(isset($_GET['companyname'])) {



    $nameofassessmentday = $db-> real_escape_string($_GET['nameofassessmentday']);
    $dateofassessmentday = $db-> real_escape_string($_GET['dateofassessmentday']);
    $companyname = $db-> real_escape_string($_GET['companyname']);

    $query = $db->query ("
        SELECT Name, Company 
        FROM assessment_day_details
        WHERE Name LIKE '{$nameofassessmentday}'
        AND Company LIKE '{$companyname}'
        AND Date_of_Day = '{$dateofassessmentday}'
        ");

        }
    }
}
?>

<div class="result-count">
    Found <?php echo $query->num_rows; ?> results.
</div>

<?php

if($query-> num_rows) {
    while($r = $query->fetch_object())  {
?>      
        <div class="result">
            <a href="#"> <?php echo $r->Name; ?></a>
            <a href="#"> <?php echo $r->Company; ?></a>
        </div>
        <?php
        }
    }
?>

1 个答案:

答案 0 :(得分:0)

你必须添加&#39;%&#39;在查询中使用LIKE时 点击这里https://www.w3schools.com/sql/sql_like.asp