在我的表单中,我尝试将acad_id
传递给academy_view.php
页面。表单提交后,我试图将acad_id
附加到网址。通过这种方式,我可以使用GET
中的academy_view.php
来从mysql db中提取记录。但每次提交后,帖子网址都有一个空白字段。
academy_create.php
$acad_id = $_POST['acad_id'];
<form action="academy_view.php?id=<?php echo $acad_id; ?>" method="POST">
Name: <input type="text" name="name"></br>
Academy ID: <input type="text" id="acad_id" name="acad_id"></br>
<input value="SAVE" name="submit" type="submit">
</form>
academy_view.php
if (isset($_GET['id']) && is_numeric($_GET['id']) && $_GET['id'] > 0){
// query db
$acad_id = $_GET['id'];
//Some Code
}
提交网址后,显示ID为空:http://www.example.com/academy_view.php?id=
答案 0 :(得分:2)
您可以编辑代码以使用POST,如下所示
<form action="academy_view.php" method="POST">
Name: <input type="text" name="name"></br>
Academy ID: <input type="text" id="acad_id" name="id"></br>
<input value="SAVE" name="submit" type="submit">
</form>
和
if (isset($_POST['id']) && is_numeric($_POST['id']) && $_POST['id'] > 0){
// query db
$acad_id = $_POST['id'];
//Some Code
}
答案 1 :(得分:0)
将值(状态)从一个页面传输到另一个页面的方法是通过请求参数,例如:
假设您在academy_create.php
并且已经有请求参数(GET或POST)acad_id
,即URL ='http://example.com/academy_create.php?acad_id=1'或作为表单字段,您可以执行以下操作:不希望用户填写“acad_id”(已经确定):
...
$acad_id = $_REQUEST['acad_id'];
...
<form action="academy_view.php" method="POST">
Name: <input type="text" name="name"></br>
Academy ID: <input type="hidden" id="acad_id" name="acad_id" value="$acad_id"></br>
<input value="SAVE" name="submit" type="submit">
</form>
如果您希望用户可以更改该值,只需将“隐藏”更改为“文本”。
如果您希望该值是只读的,请设置将readonly
添加到输入中。
现在,在academy_view.php
中,您可以使用以下内容重新获取值:
$acad_id = $_REQUEST['acad_id'];