用于从另一个mysql表中搜索例如关键字的下拉列表

时间:2014-02-17 14:35:06

标签: php mysql forms search dropdownbox

我试图让我的下拉列表从同一数据库中的另一个表中搜索例如关键字。我已经有了一个有效的搜索文本框,但我在下拉列表中遇到了问题。

Dropdownquery.php

<?php

include_once 'db.con.php';

function connect(){
    mysql_connect(DB_HOST,DB_USER,DB_PASS) or die ('Could not connect to database ' .mysql_error());
    mysql_select_db(DB_NAME);
}

function close(){
    mysql_close();
}
function query(){
    $myData = mysql_query("SELECT * FROM publisher");
    while($record = mysql_fetch_array($myData)){
        echo'<option value="' . $record['publisher'] . '">' . $record['publisher'] . '</option>';

    }

}
?>

搜索文本框查询

<?php 
include_once 'dropdownquery.php';
connect();

include_once 'db.con.php';
connect();
?>

<?php
    $k = $_GET['k'];
    $terms = explode(" ", $k);
    $query = "SELECT * FROM search WHERE ";

    foreach ($terms as $each){  
        $i++;
        if ($i == 1)
            $query .= "keywords LIKE '%$each%' ";
        else
            $query .= "OR keywords LIKE '%$each%' ";

    }

    // connect
    mysql_connect(DB_HOST,DB_USER,DB_PASS);
    mysql_select_db("search");

    $query = mysql_query($query);
    $numrows = mysql_num_rows($query);
    if ($numrows > 0){

        while ($row = mysql_fetch_assoc($query)){
            $id = $row['id'];
            $title = $row['title'];
            $description = $row['description'];
            $keywords = $row['keywords'];
            $link = $row['link'];

            echo "<br /><h3><a href='$link'>$title</a></h3>
            $description";
        }

    }
    else
        echo "No results found for \"<b>$k</b>\"";

    //disconnect
    mysql_close();


?>

表格

<form action="./search.php" method="get" name="$k">

    <select name="$dropdown" style="font-family: 'ariel'; font-size: 17px; width: 190px; height: 27px; position:absolute; left: 385px; top: 251px">
        <?php query() ?>
       </select>
        <?php close() ?>

      <input type="text" name="k" size="50" onfocus="if (this.name=='k') this.name=''; value="<?php echo $_GET["k"]; ?>" style="width: 203px; position:absolute; left: 586px; top: 251px; height: 27px; right: 567px; border:thin red solid" />
<input id="button" type="submit" value="Search" style="position:absolute; left: 800px;  top: 251px; height: 27px;" />
<input type="reset" id="button" style="position:absolute; left: 873px; top: 251px;    height: 27px; width: 57px; value="Reset"/>
</form>     

0 个答案:

没有答案