Maison  >  Article  >  base de données  >  Voici quelques options de titre, en se concentrant sur le format de la question et en capturant l'essence de l'article : * **Comment déterminer la disponibilité des utilisateurs en PHP/MySQL :** Il s'agit d'un titre simple et clair

Voici quelques options de titre, en se concentrant sur le format de la question et en capturant l'essence de l'article : * **Comment déterminer la disponibilité des utilisateurs en PHP/MySQL :** Il s'agit d'un titre simple et clair

Patricia Arquette
Patricia Arquetteoriginal
2024-10-26 03:37:28326parcourir

Here are a few title options, focusing on the question format and capturing the essence of the article:

* **How to Determine User Availability in PHP/MySQL:** This is a straightforward and clear title that directly answers the article's main focus.
* **

Détermination de la disponibilité des utilisateurs en PHP/MySQL

Lorsqu'un utilisateur se connecte, la mise à jour d'un champ de base de données peut fournir un moyen efficace de surveiller son statut en ligne. En interrogeant périodiquement ce champ, vous pouvez déterminer si un utilisateur est actuellement actif.

Détails de mise en œuvre

Pour y parvenir :

  1. Créez un champ dans la table Utilisateurs appelé lastActiveTime.
  2. Lorsqu'un utilisateur accède à une page, mettez à jour lastActiveTime avec l'heure actuelle du serveur à l'aide de la fonction NOW() de MySQL.

Identification des utilisateurs en ligne

Pour identifier utilisateurs en ligne :

  1. Effectuez une requête COUNT pour tous les utilisateurs avec lastActiveTime au cours des 5 dernières minutes.
  2. Les utilisateurs avec un lastActiveTime en dehors de cette fenêtre de 5 minutes peuvent être considérés comme hors ligne.

Amélioration de la précision (facultatif)

Pour des mises à jour en temps quasi réel sur l'activité des utilisateurs :

  1. Créez une fonction JavaScript pour envoyer une requête ping au serveur toutes les 60 secondes.
  2. Le script côté serveur mettra à jour le champ lastActiveTime, assurant un suivi continu de la présence de l'utilisateur.

Exemples de code

Code original de 2009 :

<code class="javascript">var stillAlive = setInterval(function () {
    /* XHR back to server
       Example uses jQuery */
    $.get("stillAlive.php");
}, 60000);</code>

Code 2022 mis à jour :

<code class="javascript">(async function ping() {
    // Asynchronously call stillAlive.php
    await fetch("stillAlive.php");
    // Issue this call again in 60 seconds
    setTimeout(ping, 60_000);
}());</code>

En mettant en œuvre cette approche, vous pouvez déterminer de manière fiable le statut en ligne de l'utilisateur dans PHP/MySQL. Il évite les complexités liées aux fuseaux horaires et fournit une solution évolutive pour suivre les utilisateurs actifs sur votre site Web.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn