Я новичок в кодировании с php
а также SQL
я знаю html, css and js
Я хочу написать код для простой веб-страницы чата
Я написал sign in
а также sign up
часть, и я сохранил некоторую информацию об учетных записях пользователей в моей базе данных
но моя проблема how to refresh only a part of web page
используя только php
,
у меня есть div
на моей странице для отображения сообщений, которые сохраняются в базе данных
и я хочу, чтобы его содержимое обновлялось, когда новое сообщение отправлялось в базу данных.
но я не хочу, чтобы вся страница обновлялась.
Пожалуйста, помогите мне с этим.
Чтобы обновить только часть веб-страницы, вы можете использовать AJAX. Он основан на JavaScript и позволяет обновлять определенные части веб-страницы без перезагрузки.
Здесь вы можете узнать больше: https://www.w3schools.com/js/js_ajax_intro.asp
PHP — это серверный язык, основанный на запросах / ответах, как и все в сети.
Это означает, что вы не можете отправить информацию клиенту после ответа.
Поэтому, если вы хотите сделать свою страницу динамичной, вам нужно отправить JavaScript в браузер клиента.
В зависимости от того, что вы хотите перезагрузить, вам понадобятся json и jquery / ajax для получения информации через GET или POST. Вы изменяете содержимое текущей страницы, используя это.
В этом случае вы можете использовать другую страницу PHP, например, getmessages.php:
function getMessage(){
$.ajax({
url: "getmessages.html",
context: document.body
}).done(function() {
$("#messagesdiv").html("-- body of message --");
});
}
while(true){
getMessage();
sleep(1000);
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
Вы можете проанализировать JSON, чтобы получить информацию, которая лучше. И это проверяет информацию каждую секунду.
Есть много учебников, которые могут показать, как это сделать.
Вы можете найти JQuery Вот.