Php 根据表单结果有选择地将表单发布到不同页面?
假设我在一个名为Php 根据表单结果有选择地将表单发布到不同页面?,php,html,post,Php,Html,Post,假设我在一个名为photo/delete.php的页面上有一个简单的表单。此表单删除用户指定的图像。所有这些都是: <form action="?" method="post"> <input type="checkbox" name="confirmDelete" value="confirm" /> <input type="submit" value="delete" /> </form> 因此,此表单包含一个必须勾选的确认
photo/delete.php
的页面上有一个简单的表单。此表单删除用户指定的图像。所有这些都是:
<form action="?" method="post">
<input type="checkbox" name="confirmDelete" value="confirm" />
<input type="submit" value="delete" />
</form>
因此,此表单包含一个必须勾选的确认复选框,以确保删除图像。如何根据表单内容动态选择将表单发布到哪个页面
例如,如果未选中复选框,但单击了“提交”按钮,我希望停留在相同的photo/delete.php
页面上并显示一个错误,因为可能他们确实想删除图像,只是忘记勾选该框
但是,如果一切都成功并且勾选了复选框,我想将它发布到另一个页面,比如说home.php
,因为停留在刚刚删除的图像的同一页面上是没有意义的
我如何实现这一点 你可以试试这样的东西 HTML:
<form action="delete.php" method="post">
<input type="checkbox" name="confirmDelete" value="confirm" />
<input id="btn_delete" type="submit" value="delete" />
</form>
window.onload = function(){
document.getElementById('btn_delete').onclick = function(e){
var checkBox = document.getElementsByName('confirmDelete')[0];
if(!checkBox.checked) {
if(e && e.preventDefault) {
e.preventDefault();
}
else if(window.event && window.event.returnValue) {
window.eventReturnValue = false;
}
alert('Please check the checkbox!');
}
};
};
您不会真正更改动作的形式。相反,您可以a)发布到同一个页面,但根据所发生的事情使其输出动态化;b) 发布到同一个页面,但如果成功,将包含一个标题重定向(通过PHP)到home.PHP。您需要实现某种类型的表单验证,服务器端(使用PHP检查输入字段,然后选择适当的操作)或客户端(使用JavaSCript或jQuery)。我将为表单操作使用单个值。