在我的网页中,我使用了几个php文件,并使用ajax调用它们。像在页面abc.html
中一样,有一个对example.php
的ajax调用,它通过post获取一些输入,从中计算一些内容,并向ajax success
函数返回一个值。我想实现一种方法,如果用户想通过http://somesite.com/example.php
直接访问example.php
,它应该将其重定向到其他页面,如错误页面或索引页面,而不必操纵对原始ajax调用的响应。
进入PHP文件并修改为如下内容:
if (!empty($_POST['your_post_variable'])){
header("Location: index.php"); // or whatever page you like
exit();
}
else{ /* your code for when $_POST is submitted via ajax request */
}
如果有人直接访问该文件,他们的$_POST将为空,并且他们将被重定向到该位置。
您应该使用!empty
而不是isset
。对于$_POST,isset
返回true,因为$_POST数组是超全局的并且始终存在(集)。
一个更好的方法也是使用CCD_ 9。
一切顺利。