Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.08.2022, 20:37
Интересующийся
Отправить личное сообщение для dany994 Посмотреть профиль Найти все сообщения от dany994
 
Регистрация: 21.12.2015
Сообщений: 26

Получить данные с БД в реальном времени
Как правильно сделать когда данные в БД обновляются, у всех пользователей также они обновились моментально, без перезагрузки страницы?
Что-то по типу чата!

Есть к примеру такой код:

<div id="link_wrapper"></div>

<script>
function loadXMLDoc() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      document.getElementById("link_wrapper").innerHTML =
      this.responseText;
    }
  };
  xhttp.open("GET", "server.php", true);
  xhttp.send();
}
setInterval(function(){
	loadXMLDoc();
	// 1sec
},1000);

window.onload = loadXMLDoc;
</script>

<?php 
include("connection.php");
 ?>
<table class="table">
			<thead>
				<th>Name</th>
				<th>Lastname</th>
				<th>Contact</th>
				<th>Address</th>
			</thead>
<?php 
	$query = mysqli_query($db, "SELECT * FROM tbl_info");
	while($row = mysqli_fetch_array($query)){

		$name = $row['name'];
		$lastname = $row['lastname'];
		$contact = $row['contact'];
		$address = $row['address'];
 ?>
			<tbody>
				<tr>
					<td><?php echo $name; ?></td>
					<td><?php echo $lastname; ?></td>
					<td><?php echo $contact; ?></td>
					<td><?php echo $address; ?></td>
				</tr>
			</tbody>
<?php 	} ?>
		</table>


Насколько я понимаю, запрос делается каждую секунду. Насколько это правильно и не будет это нагружать сервер сильно?
К тому же есть небольшая задержка!

Подскажите простой и работающий способ сделать это без задержки и без нагрузки на сервер?

P.S. если можно примером или готовым кодом, я совсем не силен в PHP!

Спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 11.08.2022, 21:05
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

WebSocket
https://learn.javascript.ru/websocket
Как вариант
Ответить с цитированием
  #3 (permalink)  
Старый 11.08.2022, 21:07
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,720

Почитайте про websocket, так же можете загуглить примеры real time приложений.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить данные по http ссылке Ракун Events/DOM/Window 8 17.08.2017 17:24
Как получить данные из дочерних компонентов angularnewbie Angular.js 2 03.06.2017 22:53
JQuery Autocomplete Как получить данные, вводимые пользователем в поле? decadent42 jQuery 7 30.10.2015 21:55
Как получить данные формы Moonlight Angular.js 0 24.10.2014 11:12
Возможно ли получить данные из файла на сервере? sdff Общие вопросы Javascript 11 19.07.2008 20:48