Maison  >  Article  >  base de données  >  Pourquoi mon tableau d'activités de jeu comporte-t-il des entrées en double lors de l'actualisation de la page ?

Pourquoi mon tableau d'activités de jeu comporte-t-il des entrées en double lors de l'actualisation de la page ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-30 02:28:02421parcourir

Why Does My Game Activity Table Have Duplicate Entries on Page Refresh?

Double insertion lors du chargement de la page

Sur une page de jeu spécifique présentant un jeu jouable, un utilisateur a rencontré un problème inattendu. Lors de l'actualisation de la page, une requête MySQL conçue pour insérer les données d'activité des utilisateurs dans une base de données (« game_activity ») a été soumise deux fois. La requête en question était :

$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')");

La raison de la double insertion

Le problème provenait d'une logique défectueuse du contrôleur frontal. La page exécutant la requête était invoquée lors de requêtes valides et non valides sur le site, y compris des appels à des ressources inexistantes. Cela a entraîné l'exécution de la requête plusieurs fois, provoquant des insertions en double.

Résolution du problème

Pour résoudre le problème, il a été nécessaire de modifier la logique du contrôleur frontal. L'objectif était d'empêcher l'exécution de l'application pour des requêtes non valides. En mettant en œuvre ce changement, les insertions involontaires en double lors du fonctionnement du site seraient éliminé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!

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