Задать вопрос
@eSelf

Как реализовать AJAX запрос?

Пишу плагин для CMS Zencart и зашел в тупик.
Мне нужно отправить AJAX запрос на текущую страницу.
В php у меня подключены два файла
require('includes/application_top.php');
require('includes/mymodule/myModule.php');
//тут остальной код, но не в нем суть

В самом js я отправляю запрос.
$("input[name='syncProducts']").click(function(event) {
	var myData={};
	myData['action'] = "sync";
	$.ajax({
		url:ajaxURL,
		type:"post",
		data: myData,
		dataType:"json",
		success: function(data){
			console.log(data);
		}
	});
});


Теперь в чем проблема.
Файл application_top.php - стандартный файл ZenCart, в котором все конфиги, пути и т.д. Он в свою очередь подгружает еще десяток файлов.
В моем файле myModule.php реализован класс для работы плагина и в нем же я смотрю какой запрос пришел:

if(isset($_POST['action']) && !empty($_POST['action'])) {
    $dolibarr = Dolibarr::getInstance();
    $action = $_POST['action'];
    switch($action) {
        case 'connect' : 
        break;
        case 'sync' : $dolibarr->syncProducts();
        break;
    }
    die();
}

class Dolibarr{
//тут сам класс

И когда я отправляю AJAX запрос, мне возвращает данные с application_top.php, т.к. он первый подключается. Если его подключать после myModule.php, то в моем плагине не работают те функции, которые реализованы в application_top.php (та же работа с БД).
Запутано конечно, но не знаю как проще объяснить.
  • Вопрос задан
  • 468 просмотров
Подписаться 1 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 1
@Facetrollex
Добавь еще один параметр в ajax запрос и по нему проверяй.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы