Maison >base de données >tutoriel mysql >Pourquoi ma requête de chargement de page de jeu est-elle exécutée deux fois ?
Requête de chargement de page déclenchée deux fois : une enquête
Les utilisateurs accédant à une page de jeu subissent une duplication involontaire de données lorsqu'ils actualisent la page. Après enquête, ils découvrent une requête responsable de l'enregistrement de l'activité du jeu :
$insert_user_activity = mysql_query("INSERT INTO game_activity (user_id,user_full_name,game_id,game_name) values ('$user_id','$full_name','$browser_id','$game_title')");
Cause :
La cause profonde de ce problème réside dans la logique erronée du front contrôleur. Ce contrôleur gère toutes les requêtes adressées au site Web, y compris les requêtes valides et invalides.
Explication :
Lors de l'exécution de la requête, le contrôleur frontal la déclenche par erreur pour les requêtes valides et demandes invalides. Cela entraîne plusieurs insertions inutiles dans la base de données. Par exemple, lorsque le site est mis en ligne, ce comportement pourrait conduire à des milliers de fausses insertions de données.
Solution :
Pour résoudre ce problème, la logique du contrôleur frontal doit être repensé. Il doit désormais faire la différence entre les requêtes valides et invalides et exécuter la requête uniquement lorsque cela est approprié. Cela garantit que la requête est invoquée au bon moment et empêche la duplication des données.
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!