在其他php文件中使用表单的值存在问题:
我的firstpage.php
<form method="post">
<input type="radio" name="rdbbtn" value="1"> One
<input type="radio" name="rdbbtn" value="2"> Two
</form>
我的secondpage.php
在这里
<?php
include("firstpage.php");
$result = $_POST['rdbbtn'];
if ($result == "1") {
echo 'thirdpage.php';
}
else {
echo 'fourthpage.php';
}
?>
问题:
注意:未定义索引:rdbbtn输入
为什么我不能使用“ rdbbtn”?我是否应该有类似的东西
$rdbbtn = $_POST['rdbbtn'];
在secondpage.php中?尝试了这个,但没有解决我的问题。 firstpage.php和secondpage.php在同一目录中。 也许这是我看不到的一些非常明显的事情……谢谢!
编辑:我接受了普拉德普(Pradeep)的回答,因为这对我最大程度地弄清了问题应该是什么。在此感谢所有其他出现在这里并试图提供帮助的人!
答案 0 :(得分:1)
当您更改当前页面时,它将重置该值,并且$_POST
为空。
您可以尝试将表单操作设置到下一页。会起作用
<form method="post" action="secondpage.php">
<input type="radio" name="rdbbtn" value="1"> One
<input type="radio" name="rdbbtn" value="2"> Two
<input type="submit" name="" value="Next">
</form>
否则,您可以在课程中设置
function
并设置每个页面操作 此功能。
并将每个表单数据设置为session
。
最后,当您更改页面时,您将读取session
格式的数据。
Class FormAction{
public function setFormDataToSession(){
if(isset($_POST['rdbbtn']){
$_SESSION['rdbbtn'] = $_POST['rdbbtn'];
}
}
}
只需在页面中获取会话值。
echo $_SESSION['rdbbtn'];
答案 1 :(得分:0)
应该是这样的:
使用isset
方法进行检查
<?php
include("firstpage.php");
$result = isset($_POST['rdbbtn']) ? $_POST['rdbbtn'] : NULL;
if ($result == 1) {
echo 'thirdpage.php';
}
else {
echo 'fourthpage.php';
}
?>
您的表单应如下所示:
<form method="post">
<input type="radio" name="rdbbtn" value="1"> One
<input type="radio" name="rdbbtn" value="2"> Two
<input type="submit" name="submit" value="submit">
</form>
答案 2 :(得分:0)
很抱歉,您无法在此信息中发表评论(信誉较差)。但是似乎您正在询问有关存储会话变量的问题。这样,您可以将变量用于整个会话。只需通过将session_start()
放在secondpage.php
文件的开头开始会话,然后可以在会话期间的任何时间访问变量,只需在第四页之类的任何页面中调用$_SESSION['rdbutton
]。 PHP或任何东西。只要确保您将session_start()
放在要使用变量的每页顶部即可。不要忘记最后的分号。希望这会有所帮助。