我在网页上有一个搜索表单,我将从放入的内容创建一个动态页面。我已经让它工作了,但还有另一种形式,还有可选择的数据。我希望它只在设置 sku、sku2、txtKeyword2 时显示隐藏字段行。请在下面找到我迄今为止尝试过的内容。
<form name="frmSearch" method="get" action="<?=$_SERVER['SCRIPT_NAME']?>">
<table width="100%">
<tr>
<th><h3>Search </h3>
<div class="alert-box">Insert Text for alert box</div>
<input name="txtKeyword" type="text" id="txtKeyword" value="<?=$_GET["txtKeyword"];?>" size="40">
<?php if(isset($_GET['sku'])) echo '<input type="hidden" name="sku" value="'.$_GET['sku'].'">'?>
<?php if(isset($_GET['sku2'])) echo '<input type="hidden" name="sku2" value="'.$_GET['sku2'].'">'?>
<?php if(isset($_GET['txtKeyword2'])) echo '<input type="hidden" name="txtKeyword2" value="'.$_GET['txtKeyword2'].'">'?>
<input class="alert button" type="submit" value="Search"></th>
</tr>
</table>
</form>
我想要的是它不显示输入行,如果它们没有设置。我认为我做得对,但我不确定我正在学习 php。
我也尝试了以下代码,它确实有效,但它输出了以下网址。
index.php?txtKeyword=giro%25skyline&sku=%09%09<input+type%3D
我知道这不应该发生,但它使我的页面正常工作,但是当我将数据输入到另一个搜索表单时,它会将输入行的一部分添加到 url。这是我尝试过的代码:
<form name="frmSearch" method="get" action="<?=$_SERVER['SCRIPT_NAME']?>">
<table width="100%">
<tr>
<th><h3>Search </h3>
<div class="alert-box">Insert text for the alert box</div>
<input name="txtKeyword" type="text" id="txtKeyword" value="<?=$_GET["txtKeyword"];?>" size="40">
<input type="hidden" name="sku" value="<?php if(isset($_GET['sku'])) echo ''.$_GET['sku'].'">'?>
<input type="hidden" name="txtKeyword2" value="<?php if(isset($_GET['txtKeyword2'])) echo ''.$_GET['txtKeyword2'].'">'?>
<input type="hidden" name="sku2" value="<?php if(isset($_GET['sku2'])) echo ''.$_GET['sku2'].'">'?>
<input class="alert button" type="submit" value="Search"></th>
</tr>
</table>
</form>
我真的很想知道发生了什么,我该如何解决它。
谢谢瑞恩