PHP和HTML混合:多个如果语句正确

时间:2016-03-14 03:08:00

标签: php html

所以,我正在使用PHP和HTML的混合来显示文本文件搜索查询的结果。在上一页中,有一组车牌号码,开始日期和结束日期的表格。理论上,如果文本文件包含所列日期内的牌照,它将显示所有时间,日期和位置在无序列表中显示的时间,日期和位置。无论是否有任何匹配,代码最初都会创建没有项目的列表。如果匹配,则为每个匹配创建一个列表项。如果没有,它会创建一个列表项,表示未找到匹配项。

然而,目前,如果没有匹配,它会尝试两者。如果数据库中没有数字匹配,它将为“匹配”创建一个大部分空白行,然后显示没有匹配的消息。

以下是当前错误输出的示例:

Query results for :

    , : .

    There are no plates found matching the query.

这是创建此代码的代码。我现在已经看了一个小时,无法弄清楚为什么会这样做。

<!DOCTYPE html>
<html>
<head>
    <meta charset = "utf-8" />
    <title>Query</title>
    <link rel="Stylesheet" media="all" href="styles.css" />
</head>

<body>
    <div class="match">
    <h1>Query results for <?= $wantedplate ?>: </h1> 
    <ul>
<?php 
    $wantedplate = $_GET["plate"];  
$data = fopen("stored.txt", "r");
$cline = fgets($data);
$match_check = 0;
list($cplate,$cdate,$ctime,$place) = explode(",",$cline);
while ( !feof($data) ) {
    list($cplate,$csubject,$cdate,$ctime,$cplace) = explode(",",$cline);
    if ($cplate == $wantedplate) {
        $match_check += 1;
?>
    <li> <?= $cdate ?>, <?= $ctime ?>: <?= $cplace ?>.</li>
<?php 
    ;
    $cline = fgets($data); }
    else {$cline = fgets($data); } 
    }
if ( $match_check == 0 ) { ?>
<li> There are no plates found matching the query. </li> 
<?php ; } ?>
</ul>
</div>
</body>
</html>

我们将非常感谢您提供的任何帮助。我现在一直盯着这个看了一个小时,仍然无法弄清楚为什么会这样做。在此先感谢您的帮助。

0 个答案:

没有答案
相关问题