我需要在继续之前得到确认。 我的代码是:
echo "<SCRIPT> confirm('Are you sure you want to continue') </SCRIPT>";
//press ok should keep on processing the code while cancel not.
目前按下任何按钮都会继续。
如何确认按下确认弹出窗口中的按钮?
答案 0 :(得分:1)
你不能。 PHP是一种服务器端语言,JavaScript是一种简单的语言。 在JavaScript开始在客户端浏览器中执行之前很久就在服务器上执行PHP。
一种方法是将服务分成两部分。您甚至不必使用JavaScript确认,您可以使用提交按钮的HTML表单和POST方法的隐藏值。
<form method="POST">
<input type=hidden name="internal_check" value="42">
<input type=submit value="Click me to confirm!">
</form>
点击按钮后,页面将重新加载。
在PHP脚本中,您可以检查该值的POST变量,如果存在,您可以使用以下内容继续执行确认的作业:
<?php
if(isset($_POST['internal_check']) && $_POST['internal_check'] == 42)
{
/* do confimed job here */
}
else
{
?>
<form method="POST">
<input type=hidden name="internal_check" value="42">
<input type=submit value="Click me to confirm!">
</form>
<?php
}
?>
如果没有通过POST调用访问页面,并且密码变量保持正确的值,则用户只能看到确认表单。否则将执行特殊代码。
如果您对重新加载页面不满意,可以使用AJAX完成相同的操作。基础是相同的,但它有点复杂。