显示搜索结果的链接

时间:2018-01-17 22:54:32

标签: php if-statement search

我的基本页面上有一个简单的搜索表单

<form action="../options-search.php" method="GET">
        <input type="text" name="query" />
        <input type="submit" value="Search" />
    </form>

在../options-search.php页面上,我有以下代码

<?php
$conn = mysqli_connect($hostname, $user, $pass, $dbase);


    $query = $_GET['query']; 
    $min_length = 3;

    if(strlen($query) >= $min_length){ 

        $query = htmlspecialchars($query); 
        $query = mysqli_real_escape_string ($conn, $query);

        $raw_results = mysqli_query($conn, "SELECT * FROM Options WHERE (`options` COLLATE UTF8_GENERAL_CI LIKE '%".$query."%')" );

        if(mysqli_num_rows($raw_results) > 0){ 

            while($results = mysqli_fetch_array($raw_results)){

                echo "<p>".$results['options']."</p>";
            }
        }
        else{ 
            echo "Nothing Found";
        }             
    }
    else{ 
    }
?>

它完美地运行,但是,一些选项在数据库中有链接(有关该主题的更多信息)。对于另一个页面(这里不相关,但我试图使用该代码)我使用了以下代码行:

$data[] = $row['thumb'] == 'Yes' ? ">> <a href=\"" . $row['link'] . "\"> $row[options]</a>" : ">> $row[options]"    ; 

这适用于该页面,但我似乎无法将其添加到此部分:

echo "<p>".$results['options']."</p>";

基本上,我希望代码能够确定“thumb”字段中是否存在名为“Yes”的值。如果没有,那么它只需要显示$ results ['options'],但如果是,则需要添加一个链接。 (它是相同的数据库。)

我尝试了以下操作,但它不起作用。页面显示没有任何错误,但链接不存在。

echo "<p>".$results['thumb'] == 'Yes' ? ">> <a href=\"" . $results['link'] . "\"> $results[options]</a>" : ">> $results[options]"."</p>";

我也试过if / else语句,但我一直都会遇到错误。

我该如何解决这个问题?谢谢。

编辑:

Html输出。我只删除了页眉和页脚代码。

这是Html代码。我只删除了页眉和页脚信息。

<div id="content" class="site-content"><div class="container"><div class="inner-wrapper">        <div id="separator-title">



                                  </div><!-- #separator-title -->

<link href='https://fonts.googleapis.com/css?family=Lobster|Dancing+Script|Yellowtail|Kaushan+Script|Lobster+Two:400,400italic,700,700italic|Satisfy|Courgette|Playball|Tangerine|Bad+Script|Sacramento|Calligraffitti|Niconne|Parisienne|Eagle+Lake|Metal+Mania|Risque|Uncial+Antiqua|Amita|Spirax|Nova+Script' rel='stylesheet' type='text/css'>

    <div id="primary" class="content-area">
        <main id="main" class="site-main" role="main">



<h3>Options</h3>
<div style="padding-top:15px; padding-bottom:15px;">
<p><span style="color: #5e2132; font-size: 60px; float:left; padding: 0.25em 0.05em 0.25em 0; line-height: 0.4em; font-family:Lobster Two;">V</span>iew all of the options here. ***Page info not done yet***</p>
</p>
</div>

<h3>Search Results</h3>

<div style='padding-top:15px; padding-bottom:15px;'>
<p><span style='color: #5e2132; font-size: 60px; float:left; padding: 0.25em 0.05em 0.25em 0; line-height: 0.4em; font-family:Lobster Two;'>T</span>he search rendered the following Results: <br><br>

>> Cats</p>
<div style='padding-top:15px; padding-bottom:15px;'><p><span style='color: #5e2132; font-size: 60px; float:left; padding: 0.25em 0.05em 0.25em 0; line-height: 0.4em; font-family:Lobster Two;'>I</span>f you want to search for something else or view the complete list again, use the following button:</p>
            <center><a style='border-radius: 8px; position: relative; background-image: linear-gradient(#fff,#834052b3); background-color: #fff; border: #5e2132 solid 2px; color: #5e2132; text-shadow: 0 1px 0 rgba(255,255,255,.5); box-sizing: border-box; display: inline-block; padding: 15px 15px 15px 15px; margin: auto; font-weight: bold; cursor: pointer; margin-top: 10px;' href='../options/'>Back to Options</a></center>

1 个答案:

答案 0 :(得分:0)

echo $results['thumb'] == 'Yes' ? "<p>>> <a href=\"" . $results['link'] . "\">" .  $results[options] . "</a></p>" : "<p>>> " . $results[options] ."</p>";

您错放了字符串连接符和一个段落结束标记