如何在执行前弹出JavaScript确认窗口:
<form action="index.php" method="get">
<input type="hidden" name="act" value="run">
<input type="submit" value="Clear map">
</form>
<?php
if (!empty($_GET['act'])) {
mysql_query("TRUNCATE TABLE mapinfo");
$page = $_SERVER['PHP_SELF'];
header("Location: $page");
}
?>
用户必须按“确定”才能执行PHP,或按“取消”。
答案 0 :(得分:8)
<?php
// mysql connection
if ($_GET['act'] == 'run') {
mysql_query("TRUNCATE TABLE mapinfo");
$page = $_SERVER['PHP_SELF'];
header("Location: $page"); // for this to work, script must not output something before, otherwise use echo '<script type="text/javascript">window.location = \''.$page.'\';</script>';
die;
}
?>
<form action="index.php" method="get" onsubmit="return confirm('Are you sure you want to truncate `mapinfo`?');">
<input type="hidden" name="act" value="run">
<input type="submit" value="Clear map">
</form>
答案 1 :(得分:0)
使用javascript confirm()
执行此操作。将onclick属性添加到提交按钮,该按钮将调用确认对话框并使用javascript检查是否选项是,然后是一些代码,如果没有,则检查其他代码。
答案 2 :(得分:0)
在将站点发送到客户端之前,在服务器上评估PHP脚本。仅当客户端开始处理页面时才评估javascript。因此,在评估php脚本之前,你无法在javascript中做任何事情。
解决方案是设置一个代理页面来处理你需要的javascript内容,然后引用你的php页面。
希望有所帮助!
答案 3 :(得分:0)
试试这一行,
<a href="truncate_page.php" onclick="return confirm('Are you sure you want to truncate?')">Truncate</a>