0

这是我的场景,一切正常,根据我在搜索表单中输入的内容,显示了相应的图像。但由于我在我的网站上添加了自动建议功能,看起来就像我在搜索框中写的任何内容并按下搜索,我认为我的输入表单没有将数据发送到 php。因为即使我在表格中输入了一些东西,这个条件仍然是错误的。( $name 包含用户输入的值):

if(!empty($name))

这是我的html表单:

<form class="searchform" action="webpage.php" method="POST">
<input class="searchfield autosuggest" type="text"  placeholder="Search for a name " onFocus="if (this.value == 'Search...') {this.value = '';}" onBlur="if (this.value == '') {this.value = 'Search...';}" />
<input class="searchbutton" type="submit" value="Go" />
</form>

我为自动建议添加的最新脚本是这样的:

  //Autosuggest starts here


$(document).ready(function(){
$('.autosuggest').keyup(function(){


var search_term= $(this).attr('value');
$.post('search.php',{search_term:search_term},function(data){

    $('.results').html(data);

    $('.results li').click(function(){
        var result_value = $(this).text();
        $('.autosuggest').attr('value',result_value);
        $('.results').html('');
    });

});

});
});

</script> 

最后,这是另一个 search.php 文件,用于通过数据库查询 autosuggest :

if(isset($_POST['search_term'])== true && empty($_POST['search_term'])== false)
{
    $search_term = mysql_real_escape_string($_POST['search_term']);
    $query = mysql_query("select * from user_info where Name LIKE '$search_term%'");

    while(($rows = mysql_fetch_assoc($query))!== false)
    {
    echo '<li>'.$rows['Name'].'</li>';
    }
}

现在自动建议正在工作,但不是主站点。这可能是我的图像或 php 没有从我的输入表单接收数据的定位问题吗?

4

1 回答 1

1

您应该在输入框中添加名称属性

于 2012-12-25T14:02:52.217 回答