PHP在外部html文件中显示搜索结果文本文件

时间:2015-06-09 13:20:18

标签: php jquery html ajax

我正在尝试在index.html文件中创建一个html表单,我可以通过文件searchFile.php通过PHP查询文本文件中的一行字符,获取特定行并以所述形式显示在index.html。

我的问题是我的搜索结果字段中没有显示任何内容,也没有显示错误消息或搜索结果。

更新!我已经进一步调查了我的问题,我意识到我使用Search按钮的方式不允许在页面上显示任何回声页面将再次更新,并删除echo内容。不过,我不知道如何在不使用两个按钮的情况下解决这个问题,一个用于搜索,另一个用于获取搜索结果。

这是我到目前为止所提出的:

的index.html

      </head>

                <body>
            <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js">
           $(function() {

           // getting the search term
        var searchString = $("#search_box").val();
        // forming the searchString
        var data = 'search='+ searchString;

        //if searchString is not empty
        if(searchString) {
            // call ajax
            $.ajax({
                type: "POST",
                url: "searchFile.php",
                data: data,
              beforeSend: function(html) { // this happens before actual call
                    $("#results").html(''); 
                    $("#searchresults").show();
                    $(".word").html(searchString);
               },
               success: function(html){ // this happens after we get results
                    $("#results").show();
                    $("#results").append(html);
              }
            });    
        }
        return false;


});


</script>


<form name="theForm" method="post">
Name: <input type='text' onclick="ajaxFunction();" name='search' class='search_box' id='search_box'/> <br />
<input type='submit' value='Search' class="search_button" ><br />

</form>

<div id="searchresults">Result: <span id="results" class="update"></span></div>




</body>
</html>

searchFile.php

<?php
$search = explode(' ', $_REQUEST["search"]);

$lines = file('file-export.txt'); 
foreach($lines as $line) 
{ 
    if(strpos($line, $search[0]) !== false && strpos($line, $search[1] !== false)) { 
        echo '<div id="searchresults">' . $search . '</div>';
    }else{

    echo '<div id="searchresults">' . "No match" . '</div>';


    }
} 
?>   

修改:使用 action =“searchFile.php”更新了按钮字段 编辑2:运行搜索按钮 编辑3:轻微更改

1 个答案:

答案 0 :(得分:0)

您正在尝试在不存在的块中找到搜索字符串

    var searchString = $("#search_box").val();

您的ID search_box 没有阻止,只有 search_box ,即 $(&#34; .search_box&#34;)

    <input type='text' onclick="ajaxFunction();" name='search' class='search_box' id='search_box'/>