Вызов функции php из JavaScript
Ваша страница загружается, и вы добавляете событие к элементу. Когда пользователь вызывает событие, например, кликая по ссылке, Javascript использует объект XMLHttpRequest для отправки запроса на сервер.
После того как сервер отвечает (предположительно , с выводом), ваша функция/событие Javascript дает вам возможность работы с этим выводом, в том числе просто вставляя его на страницу, как любой другой фрагмент HTML.
Вы можете сделать это «вручную» с помощью простого Javascript или использовать jQuery. В зависимости от размера вашего проекта и конкретной ситуации , может быть проще использовать простой Javascript.
Обычный Javascript
В этом очень простом примере мы отправляем запрос, когда пользователь кликает по ссылке. Сервер будет генерировать некоторый контент, в данном случае «hello world!». И будет генерироваться HTML-элемент с идентификатором output .
JavaScript
// обработчик события по ссылке, который отправляет запрос
function getOutput()
getRequest(
‘myAjax.php’, // URL на PHP файл
drawOutput, // Обработчик успешного завершения операции
drawError // Обработчик ошибки
);
return false;
>
// Обработчик отображения ошибки
function drawError()
var container = document.getElementById(‘output’);
container.innerHTML = ‘Ошибка!’;
>
// Обработчик успешного завершения операции
function drawOutput(responseText)
var container = document.getElementById(‘output’);
container.innerHTML = responseText;
>
function getRequest(url, success, error)
var req = false;
try
req = new XMLHttpRequest();
> catch (e)
try
req = new ActiveXObject(«Msxml2.XMLHTTP»);
> catch(e)
try
req = new ActiveXObject(«Microsoft.XMLHTTP»);
> catch(e)
return false;
>
>
>
if (!req) return false;
if (typeof success != ‘function’) success = function () <>;
if (typeof error != ‘function’) error = function () <>;
req.onreadystatechange = function()
if(req.readyState == 4)
return req.status === 200 ?
success(req.responseText) : error(req.status);
>
>
req.open(«GET», url, true);
req.send(null);
return req;
>
HTML
PHP
С библиотекой jQuery и т. п.
Конечно, этот код можно сократить, уплотнив блоки или используя более лаконичные логические операторы.
Используя HTML и PHP, вот скрипт с jQuery:
// Обработчик события
function getOutput()
$.ajax(
url:’myAjax.php’,
complete: function (response)
$(‘#output’).html(response.responseText);
>,
error: function ()
$(‘#output’).html(‘Ошибка!’);
>
>);
return false;
>
Ответ 2
Единственный способ запустить PHP из JS — это AJAX. Вы можете отправить данные на сервер (например, используя GET /ajax.php?do=someFunction), а затем в ajax.php:
function someFunction()
echo ‘Ответ’;
>
if ($_GET[‘do’] === «someFunction»)
someFunction();
>
После этого перехватите ответ с помощью JS (используя jQuery для выполнения запросов AJAX).
Возможно, вам понадобится какой-то формат ответа. Можно использовать JSON или XML, но JSON легко использовать с JavaScript. В PHP вы можете использовать функцию json_encode($array) , которая получает массив в качестве аргумента.
Мы будем очень благодарны
если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.
Как вызвать функцию PHP из JavaScript
От автора: PHP имеет гораздо больше встроенных функций для работы со строками, массивами и другими типами данных по сравнению с JavaScript. Поэтому для многих естественным является желание вызывать функции PHP из JavaScript. Однако, как вы уже догадались или узнали, это не работает должным образом.
Может быть множество других случаев, когда вы захотите запустить некоторый PHP-код внутри JavaScript — например, чтобы сохранить некоторые данные на сервере. Простое размещение PHP-кода внутри JavaScript в этом случае тоже не сработает.
Причина, по которой вы не можете просто вызвать функцию PHP из JavaScript, связана с порядком, в котором выполняются эти языки. PHP — это серверный язык, а JavaScript — это, прежде всего, клиентский язык.
Каждый раз, когда вы хотите посетить страницу, браузер отправляет запрос на сервер, который затем обрабатывает запрос и генерирует некоторые выходные данные, запустив код PHP. Затем полученная или сгенерированная веб-страница отправляется вам обратно. Браузер обычно ожидает, что веб-страница будет состоять из HTML, CSS и JavaScript. Любой PHP, который вы могли разместить или повторить внутри JavaScript, либо уже запущен, либо не будет работать вообще, когда веб-страница загружается в браузере.
Однако надежда еще не потеряна. В этой статье я объясню, как вы можете вызывать функции PHP из JavaScript и функции JavaScript из PHP.
Вызов функции PHP из JavaScript
Мы можем использовать AJAX для вызова функции PHP для данных, созданных внутри браузера. AJAX используется на многих веб-сайтах для обновления частей веб-страниц без полной перезагрузки страницы. Если все сделано правильно, это может значительно улучшить взаимодействие с пользователем.
Имейте в виду, что код PHP по-прежнему будет работать на самом сервере. Мы просто предоставим ему данные из нашего скрипта.
Использование jQuery AJAX для запуска кода PHP
Если вы используете jQuery, становится невероятно легко вызвать любой файл PHP с кодом, который вы хотите запустить.
Вы можете передать в функцию один или два параметра ajax(). Когда передаются два параметра, первым будет URL-адрес веб-страницы, на которую браузер отправит ваш запрос. Когда вы передаете только один параметр ajax(), URL-адрес будет указан в конфигурации.
Второй параметр содержит набор различных параметров конфигурации, чтобы указать данные, которые вы собираетесь обрабатывать, и что делать в случае успеха или неудачи и т. д. Параметры конфигурации передаются в формате JSON.
Вы можете использовать параметр method, чтобы указать метод HTTP, который следует использовать для выполнения запроса. Мы будем устанавливать его как POST, потому что мы будем отправлять данные на сервер.
Теперь давайте рассмотрим пример базового запроса AJAX, в котором мы будем передавать данные в файл PHP и вызывать функцию PHP wordwrap() внутри этого файла. Вот наша полная веб-страница:
Запуск PHP скрипта с передачей данных формы через JS
Задача —
1. По кнопке запустить на стороне сервера скрипт php в фоне без перезагрузки страницы, передав ему данные формы.
2. Читать данные из сессии по таймеру (куда скрипт пишет % выполнения) и формировать прогресс-индикатор (на стороне сервера есть скрипт который по асинхронному запросу выдает этот самый процент)
2. часть реализована.
С 1 частью заморочка. Никак не пойму как запустить скрипт в фоне. Через запрос JS он запускается и данные передаются, но он сразу отображается в браузере как при обычном переходе.
Хотелось бы использовать JS без навесок типа JQuery
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Запуск php страницы каждые n секунд из js с передачей данных
есть задача, есть index.html в ней должен быть скрипт с циклом который прерывает цикл на несколько.
Запуск php-скрипта через CRON
Приветствую! Такая проблема — есть скрипт, который, имитируя действия пользователя.
Запуск php-скрипта через планировщик задач
Можно ли запустить php-скрипт с помощью планировщика задач? Прочитал в учебнике, что можно.

Запуск стороннего PHP-скрипта через cron Битрикс
Всем привет. В корневой папке Битрикса лежит скрипт SomeScript.php Нужно его запускать через.
Coding is art
![]()
536 / 420 / 153
Регистрация: 04.09.2013
Сообщений: 1,056
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
const $form = document.querySelector('form'); $form.addEventListener('submit', (event) => { event.preventDefault(); const url = $form.action; const method = $form.method; const data = new FormData($form); fetch(url, { body: data, method }) .then((response) => { console.log(response); // do something with response }, (error) => { console.error(error); // do something with error }); });
не проверял, но по идеи как-то так можно сделать ajax пост запрос с формой..
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Как настроить запуск php-скрипта через определенные промежутки времени?
как можно организовать почтовую рассылку с определенной периодичностью? слышал что есть настройки.
PHP запуск скрипта(ов) на сервере из моего скрипта
Что я хочу сделать: Запускаю я PHP скрипт у себя на ПК, который запускает скрипт на.
Запуск программы из bat-файла с передачей данных
Здравствуйте, возникла проблема , не могу разобраться как сделать данную утилиту. У меня есть.
Запуск PHP скрипта
Имеется php скрипт в отдельном файле (main.php) Требуется запускать его при помощи JQuery/Ajax.
Запуск .py скрипта из php
Здравствуйте! Мне нужно запустить скрипт Python с параметрами, которые я ввожу в консоль при ручном.
Запуск PHP скрипта
Как запустить PHP скрипт из консоли. Например, есть файл file.php, мне нужно чтобы при нажатие.
Как запусить php файл — код через js?
Есть код рhp вставлен на разных страницах, собирает параметры и выводит цены.
Как загрузить код или файл через JS, чтобы сделать задержку на запуск php файла.
- Вопрос задан 13 дек. 2022
- 199 просмотров
2 комментария
Средний 2 комментария

Звучит непонятно. Какую задачу решаете?
alexalexes @alexalexes
PHP вставки вынести в отдельный файл, чтобы при обращении получать данные в виде JSON. Оставить на страницах статический html, а подгрузку динамических данных осуществлять через JS аякс запросами к тем файлам на сервере, куда вынесли код получения данных. Через функции JS setTimeout и setInterval можно дозировать частоту и интервал запросов новых данных.
Решения вопроса 0
Ответы на вопрос 1
Александр @tomclancys
Через AJAX это делается.
Примерно как тут — https://stackoverflow.com/questions/51172814/how-t.
Ответ написан 13 дек. 2022
Комментировать
Нравится 1 Комментировать
Ваш ответ на вопрос
Войдите, чтобы написать ответ

- PHP
- +1 ещё
Как из разных word документов собрать все таблицы с заданным названием и сохранить в один файл?
- 1 подписчик
- только что
- 2 просмотра
