我想从我正在开发的页面中搜索地址簿。地址簿是另一页的内容,此页面上的地址簿的网址为http://example.com/start.php。这个地址簿有自己的搜索字段,我将用于我的页面。 我写了以下搜索表单:
<form action="http://example.com/start.php" method="post" target="_blank">
<div>
<input type="hidden" value="adress" name="cmd" />
<input id = "adressinput" name="search" type="text" title="Search in the adress book [ctrl-f]" accesskey="f" value="adress book" />
<input id="refresh" title="refreshnow" name="refresh" type="image" src="icons/Downloads/arrow-circle-single.png" class="iconbutton"/>
</div>
</form>
问题在于,当我在表单的文本框中写入内容并在单击图标refreshnow之后,将显示页面http://example.com/start.php(地址簿),但此页面的搜索字段仍然有一个空值,当然我没有得到任何结果。
这不是我的第一个搜索表单。我写了类似的表格并且它们有效,所以,我不知道它为什么不起作用。
答案 0 :(得分:0)
2.。)您使用的是什么脚本语言?如果PHP引用了$_POST['search']
,或者您是否意外引用了$_GET['search']
?
答案 1 :(得分:0)
这一行
<input id = "adressinput" name="search" type="text" title="Search in the adress book [ctrl-f]" accesskey="f" value="adress book" />
应该是
<input id="adressinput" name="search" type="text" title="Search in the address book [ctrl-f]" accesskey="f" value="<?php echo $_POST['search']; ?>" />
或者你可以做一些更聪明的事情
if (isset($_POST['search'])) {
?>
<input id="adressinput" name="search" type="text" title="Search in the address book [ctrl-f]" accesskey="f" value="<?php echo $_POST['search']; ?>" />
<?php
} else {
?>
<input id="adressinput" name="search" type="text" title="Search in the address book [ctrl-f]" accesskey="f" value="adress book" />
<?php
}
这有点乱,你也可以在value
的{{1}}中使用一个变量,这样你文件中的行数就会少一些,例如。
input
if (isset($_POST['search'])) {
$value = $_POST['search'];
} else {
$value = 'adress book'
}
<input id="adressinput" name="search" type="text" title="Search in the address book [ctrl-f]" accesskey="f" value="<?php echo $value; ?>" />
将包含输入的搜索字词的值(一旦提交表单即可。
这是查询数据库以查找与其内容匹配的搜索结果所需的值。