我用php写的页面代码,页面叫add.php, 是从另一个页面admin.php重定向过来的,重定向的时候传递了几个参数。
于是在add.php的最开始,我先接受所传递的参数
$name, $description, $capacity...
然后调用函数检查name是否valid,如果非法的话,询问用户是否确定要将其存入数据库。
刚开始的时候我用的是<a href...> 标签,用户可以点击Yes 或No,如果No的话,直接返回admin页面,如果用户选择Yes,我就reload add.php页面,同时传送一个参数Confirm = Y告诉系统要将这些数据存入数据库。
用户确认的源代码如下
.......省略
else {
echo "<div id=\"del_room_confirm\">\n";
echo "<p>\n";
echo "$name is not alive, are you sure to add it into system?\n";
echo "</p>\n";
echo "<div id=\"del_room_confirm_links\">\n";
echo "<a href=\"add.php?type=room&name=$name&area=$area&description=$description&capacity=$capacity&confirm=Y\"><span id=\"del_yes\">" . get_vocab("YES") . "!</span></a>\n";
echo "<a href=\"admin.php?area=$area\"><span id=\"del_no\">" . get_vocab("NO") . "!</span></a>\n";
echo "</div>\n";
echo "</div>\n";
}
一切都很好,没有问题。。。
然后想改进下用JS的confirm窗口,于是改了代码如下
......省略
else {
echo "<script type=\"text/javascript\">";
echo "window.onload=function() {
var v=confirm(\"$name is not alive, do you want to add it into system? $description\");
if (v){
window.location.href = \"add.php?type=room&name=$name&area=$area&description=$description&capacity=$capacity&confirm=Y\";
}
else {
window.location.href= \"admin.php?area=$area\";
}