0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 67

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

21.06.2016, 06:57. Показов 4864. Ответов 4
Метки ajax, php (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток!
Уважаемые знатоки, нужна ваша помощь в решении моей проблемы, а суть проблемы в чем?
Пишу чат для сайта, чат работает, сообщения отправляются и принимаются, но, задался сделать админку, вроде все работает, команды проходят и т.д, но когда я захотел сделать что то типа подсказок когда к примеру не введен ид пользователя то хотел что бы выводил алерт с ошибкой, но этого не происходит.
А теперь чуть подробней:
Есть файл add_msg.php который записывает( с проверками и фильтрацией ) сообщения введенные пользователем в базу данных, происходит это через ajax, так же в этом файле написаны команды админки
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
if( substr_count( $msgR, '@ban' ) ) {
        if(isset($_SESSION["steamid"])) {
            foreach( $admins as $adminid ) {
                if( $_SESSION[ 'steamid' ] == $adminid ) {
                    $userid = str_replace( '@ban ', '', $msgR );
                    if( !empty( $userid ) ) {
                        $q = mysqli_query( $linkc, "SELECT * FROM `banusers` WHERE `steamid`='".$userid."'" ) or die( mysqli_error( $linkc ) );
                        if( mysqli_num_rows( $q ) < 1 ) {
                            $q = mysqli_query( $linkc, "SELECT * FROM `message` WHERE `steamid`='".$userid."'" ) or die( mysqli_error( $linkc ) );
                            $row = mysqli_fetch_array( $q );
                            mysqli_query( $linkc, "INSERT INTO `banusers` ( `steamid`, `name` ) VALUES ( '$userid', '".$row['name']."') " ) or die( mysqli_error( $linkc ) );
                            mysqli_query( $linkc, "INSERT INTO `message` ( `steamid`, `name`, `avatarURL`, `msg` ) VALUES ( '6666666666666', '$botName', '/core/chat/img/admin-avatar.png', '".$row['name']." был забанен' ) " ) or die( mysqli_error( $linkc ) );
                                    
                        }
                        return false;       
                    } else echo '<script type="text/javascript">alert( "Test" )</script>';
                }
            }
        }
    }
Сам код работает, пользователи банятся, но вот
PHP
1
else echo '<script type="text/javascript">alert( "Test" )</script>';
Уже не срабатывает, из за чего я собственно и пишу сюда, я знаю что это происходит в следствии загрузки через ajax, но как это пофиксить я не знаю, в сети тоже не нашел ничего что бы мне помогло.
За ранее благодарен за помощь!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.06.2016, 06:57
Ответы с готовыми решениями:

Вызов ajax запроса после обработки другого ajax запроса
Добрый день. По нажатию на кнопку происходит ajax запрос. Сервер возвращает true или false. Если результат true, то должен выполняться еще...

После вставки ответа ajax в input запроса, ответ ajax не изменяется
Здравствуйте! В общем так, есть поле input, есть таблица с полем count. Задача: изменить содержимое поле count по средством ajax, но при...

Изменения цвета div после после удачного завершения запроса Ajax
Добрые сутки! Помогите решить следующую проблему. Есть 10-ть Div внутри каждой написано три слова: (красный, синий, зеленый). Когда...

4
Хитрая блондиночка $)
 Аватар для Hikari
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
21.06.2016, 07:16
А как ты AJAX описал?
0
0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 67
21.06.2016, 07:30  [ТС]
отправка сообщений:
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
function sendMessage( ) {
        var msg = jQuery( '#msg_enter' ).val( );
        if( msg != '' && msg != ' ' ) {
            if( !antiFlood ) {
                $.ajax( { 
                    url: '/core/chat/add_msg.php',
                    type: 'POST',
                    data: ({ message: msg }),
                    cache: false,
                    success: function( response ) {
                        loadMessage( );
                        jQuery( '.chat-messages' ).animate({
                                scrollTop: jQuery( '.chat-messages' ).prop( 'scrollHeight' )
                            }, 1500 );
                        setInterval( jQuery( '#msg_enter' ).val( '' ), 1000 );
                        jQuery( '#msg_enter' ).focus( );
                        antiFlood = true;
                        setInterval( function(){ antiFlood = false; }, floodTime );
                    },
                    error: function( err ) {
                        alert( err );   
                    }
                } );
            } else notice( 'Не флуди!', 'error' );
        } else notice( 'Введите сообщение!', 'error' );
    }
Функция вызывается по нажатию на Enter
0
Хитрая блондиночка $)
 Аватар для Hikari
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
21.06.2016, 11:54
Лучший ответ Сообщение было отмечено BANO как решение

Решение

А у тебя в success нет обработки ответа.
По идее в твоем случае можно написать так:
JavaScript
1
2
3
success: function( response ) {
 eval(response)
...
А в самом РНР ответ писать без тегов script.
Только учти что это уязвимость.
Ajax сам по себе не умеет выполнять полученное.
1
0 / 0 / 0
Регистрация: 03.10.2014
Сообщений: 67
21.06.2016, 13:10  [ТС]
Спасибо за помошь, но сделал чуть по другому, скорей даже по колхозному.
в echo вывожу уникальный набор цифр, а в success делаю проверку response на эти цифры и если совпадают то вывожу свой нотис.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.06.2016, 13:10
Помогаю со студенческими работами здесь

Не срабатывает click(), после ajax запроса
есть такой код : $(&quot;div#timezone&quot;).on(&quot;click&quot;, function(e){ if($(this).find(&quot;ul#tzcontent&quot;).css(&quot;display&quot;) ==...

Перезагрузка страницы после ajax запроса
Вообщем ситуация такая. Есть форма данные из которой php сценарию по клику на копку посредством ajax запроса передаются некоторые...

Отправка ajax запроса после .submit
Задача такая. Есть пост запрос который необходимо осуществить ПОСЛЕ отправки данных из формы. Вот код. ...

Показать модальное окно после AJAX-запроса
Всем привет! Нужна помощь. и так есть простая форма с ajax. как только заработает нужно показать модальное окно, окно можно посмотреть...

После выполнения ajax-запроса переменная теряется
Возможно я чего-либо не смыслю в тонкостях работы JS. У меня есть такая функция: const DatabaseHandler = { //... request:...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru