В данной статье мы будем определять, откуда идет запрос? С ajax или с простой формы. Для определения ajax запроса, существует простой кусок PHP кода, который использует параметр HTTP_X_REQUESTED_WITH, суперглобального массива $_SERVER. Как нам известно ajax запрос, посылается с помощью объекта xmlhttprequest. Если подзабыли или не понимаете о чем я, прочтите очень полезную статью о
Некоторые сервера могут не поддерживать параметр HTTP_X_REQUESTED_WITH, это так же необходимо учитывать. В коде мы проверяем существование элемента массива, а также его наполненность данными о запросе, тут же переводим его значение в нижний регистр (функция strtolower) и сравниваем с xmlhttprequest. Если выражение верно, то значит это ajax запрос. Если выражение ложно это простой запрос. Вот так просто можно определить ajax запрос.
Зачем определять ajax запрос?
Кто определял, тот знает, не мне вам объяснять. Например, в целях безопасности, если вы не хотите, чтобы данные были отосланы каким-то другим методом, как не ajax. И это очень важно ставить такие проверки, если используете ajax приложения.
Это также полезно при написании многогранных приложений, и вы хотите что-бы была форма с javascript (ajax) и без javascript. Для этого нужно определить наличие ajax (js) а при посылке на скрипт обработчик, определить каким методом был послан запрос и выполнить соответственные действия.
Источник: sitear.ru