Нет, не будет. База данных не сообщит вам, когда будет вставлена запись. Вы можете использовать AJAX для отправки запроса на сервер. Затем этот сервер может запросить изменения. Он может отправить ответ, указывающий, есть ли изменение. Затем обработчик ответа AJAX-запроса может показать сообщение соответствующим образом.
Но реализация этого вызовет большую нагрузку как на веб-сервер, так и на сервер базы данных. Так что, если вы делаете это, выбирайте время с умом. Не выполняйте эту процедуру 10 раз в секунду, иначе вы убьете свой сервер, как только наберете 100 посетителей.
Чтобы решить вашу проблему, разбейте ее на две части:
1. Получить фактический запрос AJAX для работы. Пусть сервер вернет фиктивные значения и попытается их правильно обработать. Подсказка: используйте JQuery.ajax (или даже JQuery.get), чтобы облегчить свою жизнь.
2. Получите сервер, чтобы запросить изменения. Если вы хотите контролировать одну таблицу, это легко сделать. Добавьте столбец отметки времени в таблицу, если у вас ее еще нет. Вы можете настроить его так, чтобы он обновлялся при каждом обновлении таблицы. Затем запросите самую высокую метку времени. Не забудьте добавить индекс к этому столбцу!
Вы можете поэкспериментировать и с другими решениями. Добавьте триггер, который изменяет дату / время в другой таблице. Таким образом, опрос должен запрашивать только один столбец, а не запрос «max».
Чтобы правильно обрабатывать изменения, я думаю, лучше всего позволить Javascript удерживать до последней отметки времени. Отправьте метку времени обратно в ответе. Javascript может сравнивать отметку времени с последней отметкой времени и показывать сообщение при необходимости. Таким образом, вам не нужно будет сохранять временные метки в сеансе.