при звонке
xhr.open("GET","db_interactions.php",true);
вы говорите XMLHttpRequest для асинхронной работы . Вы говорите ему, чтобы он ушел и выполнил свою работу, вызывая функцию обратного вызова в какое-то неопределенное время в будущем, когда запрос будет полностью обработан. Измените это true
на false
, и оно будет работать так, как вы ожидаете. С другой стороны, эта функция может зависать на неопределенный срок в случае замедления работы сети и т. Д., Поэтому caveat programmor .