Maison  >  Article  >  base de données  >  Comment utiliser PHP pour faire fonctionner MySQL afin de mettre à jour les résultats de la requête

Comment utiliser PHP pour faire fonctionner MySQL afin de mettre à jour les résultats de la requête

WBOY
WBOYavant
2023-05-27 15:36:171531parcourir

1. Utilisation d'AJAX

Dans le développement front-end moderne, la popularité de la technologie AJAX rend la communication JavaScript et back-end plus pratique. Grâce à AJAX, les données générées par la page PHP peuvent être facilement obtenues et utilisées pour mettre à jour dynamiquement le site Web.

AJAX récupère les données de PHP (généralement JSON), puis utilise les opérations DOM pour mettre à jour les éléments HTML afin de mettre à jour les données. Cela nous permet de mettre à jour les données en temps réel sans avoir à actualiser toute la page Web.

Voici un exemple simple :

$.ajax({
    url: 'update.php',
    method: 'post',
    data: {
        // 发送到update.php的数据
    },
    success: function(data) {
        // 成功获取返回的数据
        // 使用DOM操作更新HTML元素
    }
});

Nous envoyons les données à mettre à jour vers la page PHP "update.php" comme cet exemple. Ensuite, la page PHP traite les données, met à jour la base de données et renvoie un résultat au format JSON. Enfin, grâce à la fonction de rappel de réussite, nous obtenons une mise à jour des données en temps réel.

2. Utilisation de WebSocket

WebSocket est un protocole de communication bidirectionnel qui permet d'établir une connexion persistante entre le client JavaScript et le PHP back-end. De cette façon, nous pouvons obtenir des données en temps réel comme AJAX.

WebSocket permet de mettre à jour les données en temps réel soit sur le serveur, soit sur le client, sans aucun délai. La grande efficacité de mise à jour de WebSocket le rend largement utilisé dans les jeux, les discussions de groupe et d'autres applications en temps réel.

Voici un exemple simple :

var conn = new WebSocket('ws://localhost:8080');
conn.onmessage = function(event) {
    // 实时更新数据
};

Dans cet exemple, nous sommes connectés à un serveur nommé "ws://localhost:8080" via WebSocket. Lorsque les données sont mises à jour, nous recevrons immédiatement un rappel d'événement et mettrons à jour les données.

3. Utiliser le sondage long

Le sondage long est une technologie de développement Web qui permet au client de maintenir la connexion HTTP ouverte pendant une certaine période de temps. Le serveur enverra une réponse lorsqu'il y aura des données à mettre à jour, sinon il maintiendra la connexion ouverte.

Grâce à la technologie d'interrogation longue, les résultats des requêtes PHP et MySQL peuvent être mis à jour en temps réel, de la même manière que les effets d'AJAX et de WebSocket. Par rapport aux WebSockets, les interrogations longues nous permettent d'obtenir des mises à jour des données en temps réel dans tous les navigateurs, pas seulement ceux pris en charge par WebSockets.

Voici un exemple simple :

$.ajax({
    url: 'update.php',
    method: 'post',
    data: {
        // 发送到update.php的数据
    },
    success: function(data) {
        // 成功获取返回的数据
        // 使用DOM操作更新HTML元素
        setTimeout(longPoll, 0); // 函数递归
    },
    error: function() {
        setTimeout(longPoll, 0); // 函数递归
    }
});

function longPoll() {
    $.ajax({
        url: 'long-poll.php',
        method: 'post',
        data: {
            // 发送到long-poll.php的数据
        },
        success: function(data) {
            // 成功获取返回的数据
            // 更新HTML元素
            setTimeout(longPoll, 0); // 函数递归
        },
        error: function() {
            setTimeout(longPoll, 0); // 函数递归
        }
    });
}

Nous avons utilisé deux scripts PHP, l'un est update.php et l'autre est long-poll.php. Lors de la demande initiale, update.php renverra les données et définira le délai d'attente pour que PHP attende les événements en arrière-plan. En cas de mise à jour des données, les données sont renvoyées au client.

En l'absence de mises à jour des données, une interrogation longue renverra une réponse vide mais ne fermera pas la connexion HTTP. De cette façon, le client maintient la connexion ouverte mais peut conserver l'état actuel de la réponse. Long-poll.php enverra une réponse concernant la mise à jour des données au client, afin que celui-ci puisse obtenir les données mises à jour.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer