要解决这个问题,可以在PHP代码中添加一个条件来检查是否存在Ajax POST请求。如果存在,就执行相应的代码;如果不存在,就执行其他逻辑。
以下是一个示例代码:
在上面的代码中,首先检查$_SERVER['REQUEST_METHOD']
变量是否等于'POST'
,这样可以确保请求是一个POST请求。然后,检查$_SERVER['HTTP_X_REQUESTED_WITH']
变量是否存在,并且是否等于'xmlhttprequest'
,这样可以确保请求是通过Ajax发送的。如果满足这两个条件,则执行相应的代码;否则,执行其他逻辑。
请注意,这种方法并不是绝对可靠的,因为HTTP标头可以被伪造。但对于大多数情况来说,这已经足够了。如果需要更严格的验证,可以考虑使用其他方法,如使用CSRF令牌来验证请求的合法性。