我正在尝试将链接的文本作为值传递给下一页,因此我可以使用它来搜索数据库中的项目并检索与该值相关的信息。我尝试过使用POST方法,但无论信息如何没有通过。这是我试过的代码。
<form action="DetailedMenu.php" method = "POST" action = "<?php $_PHP_SELF ?>">
<?php
for($i=0;$i<sizeof($array);$i++) {
if($array[$i]["Food_Category"]=="starters") {
echo str_repeat(' ', 4); ?>
<a href="DetailedMenu.php" ><?php echo $array[$i]["Food_Name"];?></a>
<?php echo " " .str_repeat('. ', 25). "€".$array[$i]["Food_Price"]."<br>"; ?>
<input type="hidden" name="name" value="<?php echo $array[$i]["Food_Name"];?>">
<?php
}
}
?>
</form>
答案 0 :(得分:0)
你不需要表格。
做出你想要做的事情最简单的方法....
除了在链接内容中包含文本外,还要将其包含在查询字符串参数中。
for($i=0;$i<sizeof($array);$i++) {
if($array[$i]["Food_Category"]=="starters") {
...
<a href="DetailedMenu.php?q=<?php echo $array[$i]["Food_Name"];?>"><?php echo $array[$i]["Food_Name"];?></a>
...
}
}
我实际上会推荐更像这样的东西。我显然不知道你的田地名字,所以我只是猜测了......
for($i=0;$i<sizeof($array);$i++) {
if($array[$i]["Food_Category"]=="starters") {
...
<a href="DetailedMenu.php?FoodID=<?php echo $array[$i]["Food_ID"];?>"><?php echo $array[$i]["Food_Name"];?></a>
...
}
}
您将能够访问&#34; FoodID&#34;作为PHP中的参数,就像从表单中提交一样。
答案 1 :(得分:-1)
您可能正在寻找AJAX。 AJAX允许您将表单数据发送到后端PHP文件(然后可以将数据插入到数据库中,和/或从数据库中获取数据),而无需刷新页面。
事实上,当你使用AJAX时,你甚至不需要使用<form>
结构 - 简单的DIV工作得很好。然后,您不需要使用event.preventDefault()
来禁止内置表单刷新。
只需在DIV内部构建一个结构(输入字段,标签等),当用户准备提交时,他们可以点击一个普通的按钮:
<button id="btnSubmit">Submit</button>
<强> jQuery的:强>
$('#btnSubmit').click(function(){
var fn = $('#firstname').val();
var ln = $('#lastname').val();
$.ajax({
type: 'post',
url: 'ajax_receiver.php',
data: 'fn=' +fn+ '&ln=' +ln,
success: function(d){
if (d.length) alert(d);
}
});
});
<强> ajax_receiver.php:强>
<?php
$fn = $_POST['fn'];
$ln = $_POST['ln'];
//Do your stuff
Check out this post,特别是它的例子。将它们复制到您自己的系统上,看看它们的工作原理。这很简单。