在一系列网络表单上,用户需要能够向前和向后移动。但是我想处理表格而不管他们走向哪个方向。
按钮具有“提交”的名称和“返回”和“下一步”的值。我如何解释该值? 这不起作用: - )
if(isset($_POST[$submit['back']])) { header('location: ../pages/create_page1.php'); }
if(isset($_POST[$submit['next']])) { header('location: ../pages/create_page3.php'); }
答案 0 :(得分:1)
您无法使用$submit
获取按钮值,它应为$_POST['submit']
。
你可以试试这个脚本。
<?php
if(isset($_POST['next'])) {
$submit = 'Next button was clicked.';
// header(...);
} elseif(isset($_POST['back'])) {
$submit = 'Back button was clicked.';
// header(...);
} else {
$submit = '';
}
?>
<form action="" method="post">
<p>Click...</p>
<input type="submit" name="back" value="Back"/>
<input type="submit" name="next" value="Next"/>
</form>
<br/><?=$submit;?>
或者在评论中使用相同的按钮名称和箭头:
<?php
if(isset($_POST['submit']) && $_POST['submit'] == 'next') {
$submit = 'Next button was clicked.';
// header(...);
} elseif(isset($_POST['submit']) && $_POST['submit'] == 'back') {
$submit = 'Back button was clicked.';
// header(...);
} else {
$submit = '';
}
?>
<form action="" method="post">
<p>Click...</p>
<input type="image" name="submit" src="http://cdn4.iconfinder.com/data/icons/brightmix/128/monotone_arrow_left_small.png" value="back"/>
<input type="image" name="submit" src="http://cdn4.iconfinder.com/data/icons/brightmix/128/monotone_arrow_right.png" value="next"/>
</form>
<br/><?=$submit;?>
答案 1 :(得分:1)
尝试使用jquery:
$('#some_button').click(funnction(){
var $Data = $('#some-data-input').val();
if($Data.length > 0){ // or some else
window.location.href = "../pages/create_page3.php";
} else {
// other action
}
});
答案 2 :(得分:1)
该字段的名称称为submit
,因此您需要检查该字段是否已提交以及其值是什么:
if ( isset($_POST['submit]') && $_POST[submit] == 'back' )
但是,您没有使用提交按钮,而是使用服务器端图像映射,因此可能未提交该值(取决于浏览器)。
相反,您需要为字段指定不同的名称,然后检查是否为这些字段发送了坐标。
<input type="image" name="submit_back" src="../images/arrows/back_50.png" width="121" height="50" border="0" alt="Back" />
if ( isset($_POST['submit_back_x']) )
答案 3 :(得分:1)
试试这个javascript函数......
<script language=javascript>
function redirect()
{
if(document.value=="Next")
{
document.form.action="next.php";
}
else if(document.value=="Back")
{
document.form.action="back.php";
}
return true;
}
</script>
<form method="post" name=form onsubmit='return redirect();'>
<p>Click...</p>
<input type="submit" name="back" value="Back"/>
<input type="submit" name="next" value="Next"/>
</form>