PHP determines whether it is an ajax request_PHP tutorial
php determines whether it is an ajax request
For program security considerations, in some cases we need to detect whether a request is an AJAX request. How to judge? This article briefly shares the experience.
1. When using native JavaScript to issue an ajax request, we can add information to the request header to facilitate the back-end PHP program to distinguish. The method is as follows:
var xmlhttp=new XMLHttpRequest(); xmlhttp.open("GET","test.php",true); xmlhttp.setRequestHeader("X-Requested-With","XMLHttpRequest"); xmlhttp.send();
Here we add X_REQUESTED_WITH information to the header, with the value XMLHttpRequest. Of course, the value here can be set at will, such as: www.phpernote.com. In this way, you can write this in the receiving php program:
<?php // php 判断是否为 ajax 请求 if(isset($_SERVER['HTTP_X_REQUESTED_WITH'])&&strtolower($_SERVER['HTTP_X_REQUESTED_WITH'])=='xmlhttprequest'){ // ajax 请求的处理方式 }else{ // 正常请求的处理方式 }
2. The currently popular js framework jquery has taken this into account quite fully. When jQuery issues an ajax request, it will add a message named X-Requested-With to the header of the request. The message content is: XMLHttpRequest, so the backend PHP can also be judged using the above code.
Note: If your jquery request opens a web page through an iframe, the HTTP_X_REQUESTED_WITH parameter will not be passed, which means you have no way to determine the type of request.
Articles you may be interested in
- How does PHP determine whether the current operating system is linux or windows
- PHP determines whether a request is an AJAX request or a normal request
- How to determine whether a string is in English, pure Chinese, or a combination of Chinese and English
- PHP determines whether the server SSL is enabled, that is, whether it supports HTTPS connection
- php determines the remote file Is there a way
- php get_headers to determine whether the URL is valid
- How does PHP determine whether a gif image is a dynamic image (animation)
- How does PHP determine whether a constant has been defined

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

In this chapter, we will understand the Environment Variables, General Configuration, Database Configuration and Email Configuration in CakePHP.

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

To work on file upload we are going to use the form helper. Here, is an example for file upload.

In this chapter, we are going to learn the following topics related to routing ?

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

Validator can be created by adding the following two lines in the controller.
