我有一个使用 php 从 txt 文件生成的 html。我想知道为这个网站构建搜索功能的最佳方法是什么。我想到了Javascript,但由于某种原因,如果HTML在PHP中,它就不起作用。它在我的本地计算机上的独立 html 文件上完美运行。PHP在这种情况下会更好吗?
下面是一个代码示例,因此您知道我的意思:
$fp=fopen("csv/inventory4.html",'w');
$write=fputs($fp,$html_body,strlen($html_body));
$i=0;
$content = file("webinvt.txt");
foreach($content as $line)
{
$l=csv_split($line); etc...
还有另一部分 php 里面有 html
$html_body = '<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>CSV Contents</title> etc...
等。。。
一般来说,内容的搜索(不是动态搜索单个页面中的值或内容,那么你当然可以使用js)应该在你的内容所在的任何地方进行。在您的情况下,内容在服务器上,因此应在服务器端使用服务器端技术实现搜索。对于您的情况,使用 PHP 是最好的解决方案。
我希望我得到了你的问题。如果我理解你,你在HTML文档中有页面和文本,你加载它们并显示为PHP文件。你想建立对这些文本的搜索。
首先,您需要将搜索表单添加到HTML页面。像这样:
<form action="" method="get">
Search: <input type="textfield" id="search" name="search" value="search">
<input type="submit" name="submit">
</form>
这将使输入条件的查询链接,因此新链接将看起来像index.php?search=textFromInput。
然后在PHP中,你像这样处理它:
$criteria = $_GET['search'];
之后,您将在搜索字段中使用包含用户输入的变量$criteria。现在,当您加载文件时$fp = fopen("file","r");
用户 PHP 子字符串(); 以在该加载的文件中查找该条件。
编辑:
试试这个:
<a href="#" onclick="find();">Find in This Page...</a>