Форум программистов, компьютерный форум, киберфорум
1С Битрикс
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/64: Рейтинг темы: голосов - 64, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 14.07.2013
Сообщений: 18

Не работает ajax запрос

07.06.2018, 15:28. Показов 12222. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую!
Помогите кто может. Ситуация такая внезапно на сайте перестал работать аякс запрос. Никаких правок никто не вносил , а функционал перестал работать.
Вот яваскрипт который отправляет запрос на сервер

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
(function($, BX){
    $(function(){
      //
        var UrlPAth = $('.order_step_1').data('url');
        console.log(UrlPAth);
        console.log(UrlPAth+"?sessid="+BX.bitrix_sessid()
        
        );
        $('.order_step_1').on('click', function(e) {
            e.preventDefault();
            var $form = $(this).closest('.form_block'),
                $rooms= $form.find('.rooms_set').val(),
                $bath_rooms= $form.find('.bathroom_set').val();
            
            $.ajax({
                type: "POST",
                dataType: "json",
                url: UrlPAth+"?sessid="+BX.bitrix_sessid(),
                data: {
                    "sessid": BX.bitrix_sessid(),
                    'room':$rooms,
                    'bathroom':$bath_rooms,
                    //"id": $item
                },
                beforeSend: function() {
                    console.log('beforeSend -step 1');
                },
                success: function(j) {                     
                    if (j.status) {
                         if(j.loc) window.location.href=j.loc;
                    }
                },
                complete: function(j) {
                    console.log('complete -step 1');
                },
                error: function( jqXHR,textStatus, errorThrown) {
                    console.log(textStatus);
                    console.log(errorThrown);
                }
            });
        });
    });
})($, BX);

вот скрипт на стороне сервера который вызывается пхп:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?
require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php'); // include  bitrix prolog (clasess)
define("STOP_STATISTICS", true); // disable statisti
$module_id = "modul";
use Bitrix\Main\Application;
use Bitrix\Main\Loader;
use Webvision\Directory;
 
$request = Application::getInstance()->getContext()->getRequest();
$PostRoom = intval(
$request->getPost("room"));
$PostBathRoom = intval($request->getPost("bathroom"));
$result = array('status' => "N");
 
if (check_bitrix_sessid() && $PostBathRoom > 0 && $PostRoom > 0 && Loader::includeModule($module_id)) {
    /*function valudate params post*/
    if (Directory\Options::CheckRoom_Bath($PostRoom, $PostBathRoom)) {
 
        Directory\Order::SetBaseRooms($PostRoom, $PostBathRoom);
        $result['status'] = "Y";
        $result['loc'] = Directory\Main::$orderDir;
    }
 
}
echo json_encode($result);
В итоге в консоле ошибка
parsererror
Code
1
2
3
4
5
6
script.js?15283150221521:41 SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at m.parseJSON (jquery.js:8520)
    at Pb (jquery.js:8846)
    at x (jquery.js:9264)
    at XMLHttpRequest.b (jquery.js:9718)
ошибка парсера джсон.
Пробовал принамть текст ответ приходит но выводится пустая строка.
Теперь самое интересное если в пхп коде убрать вызов пролога и всех остальных функций битрикс , тоесть оставить просто echo("string") , то ответ приходит.
Может кто знает в чем проблема уже всю голову сломал.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.06.2018, 15:28
Ответы с готовыми решениями:

Не работает ajax запрос
Всем привет! Никак не получается вызвать ajax запрос. В js скрипте вызываю функцию: $.post('my.php', { v: 'test'}, function(data)...

Новичок ajax запрос!
По клику выполяю запрос, но пхп код не выполняется, что делать??? вот сам запрос $(&quot;#go a&quot;).click(updateElement) ...

Делаю ajax запрос, хочу создать элемент инфоблока
К сожалению в Битриксе я не работал до этого. В задаче нужно было создать скрипт который добавляет элемент инфоблока. Но я столкнулся...

4
3012 / 1446 / 262
Регистрация: 16.03.2008
Сообщений: 6,444
Записей в блоге: 2
07.06.2018, 23:10
Ну так, а вы сам ответ смотрели в инструментах разработчика браузера?
Наверняка там кроме json идет еще какой то мусор. (и лучше посмотреть - там может быть сообщение об ошибке)

А после этого:
вместо 25 строки приведенного листинга:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
// очищаем весь вывод что было до
$APPLICATION->RestartBuffer();
 
//вывод JSON
echo json_encode($result);
 
 
// далее две строки нужны если ставили в процессе cookie
$response = Bitrix\Main\Context::getCurrent()->getResponse();
$response->flush();
//далее обеспечиваем, чтобы после точно не было ни какого вывода
die();
1
0 / 0 / 0
Регистрация: 14.07.2013
Сообщений: 18
13.06.2018, 17:03  [ТС]
Подскажите не разумному. Какую утилиту использовать для просмотра ответа сервера. Я смотрел через гугл хром но там я так понял только заголовки.
Еще момент что как раз когда в коде не испольуется функция сброса буфера ответ приходит нормально.Я вот закоментировал вызов буфера в ядре системы и код заработал. Это не ришение конечно
0
3012 / 1446 / 262
Регистрация: 16.03.2008
Сообщений: 6,444
Записей в блоге: 2
14.06.2018, 14:45
Цитата Сообщение от jakobx86 Посмотреть сообщение
Я смотрел через гугл хром но там я так понял только заголовки.
Смотрите внимательнее там есть вкладки Headers,Preview, Reponse...
0
8 / 16 / 2
Регистрация: 15.06.2015
Сообщений: 247
19.06.2018, 08:56
Может глупый и очевидный совет, но почистите полностью кеш сайта, в настройках "автокеширования"... У меня было много проблем непонятных пока не нашел эту функцию. Сброс кеша стандартной кнопкой в битриксе часто не помогает...хз почему.

script.js?15283150221521:41 - вот это у вас закешированный файл.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.06.2018, 08:56
Помогаю со студенческими работами здесь

Не работает Ajax-запрос
Добрый день. Подскажите пожалуйста, не работает Ajax-запрос. Работаю с Visual Studio 2013 update 5, язык C#. 1) В BundleConfig.js...

Не работает ajax запрос
Вот код: _url = &quot;'http://www.my-portfolio.name/ad/engine/getRequest.php&quot;; makeRequest(_url); function makeRequest(url) { ...

Не работает ajax запрос
Приветствую подскажите в чем ошибка &lt;html&gt; &lt;head&gt; &lt;script...

Не работает запрос ajax
&lt;?php include('logical_pr.php'); if(isset($_GET)){ $begin = $_GET; $end = $_GET; } else{ $begin = 0; $end = 2; ...

Не работает Ajax запрос
&lt;?php require &quot;db.php&quot;; ?&gt; &lt;?php if(isset($_SESSION)): ?&gt; &lt;p&gt;Добро пожаловать &lt;?php echo $_SESSION-&gt;login;?&gt;&lt;br&gt;&lt;/p&gt; &lt;?php...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru