Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Запускать js функцию после обновления данных в mysql БД. (https://javascript.ru/forum/events/53097-zapuskat-js-funkciyu-posle-obnovleniya-dannykh-v-mysql-bd.html)

asdds 20.01.2015 21:00

Запускать js функцию после обновления данных в mysql БД.
 
Доброго времени.
Студент, столкнулся с такой проблемой.
Делаю web-интерфейс для работы с mysql таблицей. Все минимально, панель управления (несколько вкладок, ajax)+ вывод таблицы.
На onclick ивенты у меня заваязано две js функции.
Первая js функция посылает данные из формы в php файл, который уже работает непосредственно с БД. (там у меня одностраничный ajax, поэтому не посылаю напрямую в php из html формы).
Вторя же js функция - обращается к другому php файлу, и заново выводит таблицу, с уже обновленными данными. (вторую функцию можно поместить непосредственно в конце тела первой и не вызывать отдельно, но это результата не меняет вроде).
Проблема следующая - иногда первая функция отрабатывает дольше второй, и соответственно выводится таблица с еще не обновленными данными. Проблема точно в скорости - я смотрел и сравнивал тайминги, если первая функция отрабатывает быстро - выводится корректная обновленная таблица. Если же первая функция работает медленней - вывод не корректный.
Собственно вопрос, как в такой ситуации сделать вывод таблицы на страницу только после обновления данных в БД?
Буду благодарен за любую наводку, даже не знаю как сформулировать запрос гуглу по этому вопросу.

danik.js 21.01.2015 00:11

Делай все одним запросом. Какого хрена ты их плодишь? Чеж тогда в три, в четыре запроса не сделаешь обновление?

danik.js 21.01.2015 00:14

HTTP-запрос - это всегда Запрос + Ответ:

Запрос:
Клиент -> (Данные на запись) -> Сервер
Ответ:
Клиент (Данные на отображение) <- Сервер

Как видишь, все выполнимо в один запрос. Второй просто не нужен.

asdds 21.01.2015 02:53

Несколько файлов потому, что там разные запросы бывают - на добавление, редактирование, удаление, поиск. И они дают свои ответы, вроде: строка такая-то удалена успешно или ошибка ввода такая-то, в выделенный под них див. На а вывод таблицы я отдельно сделал, чтобы не дублировать в каждый запрос - там приличный кусок, который учитывает поиск и разные сортировки. Если я все это дело в один запрос попробую объединить, предполагаю выйдет свалка. А так понятно что, где, и за что отвечает.
В принципе, мне скорей всего поможет onload в XMLHttpRequest, упустил что такой метод есть, сейчас изучаю.

upd. Разобрался. Действительно, перелопатил код и сделал все одним запросом без велосипедов. По неопытности понесло куда-то не туда.


Часовой пояс GMT +3, время: 20:30.