En una página web de juegos, se observó que una consulta de actividad del usuario insertaba registros duplicados en la base de datos al actualizar la página.
$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')");
El culpable de este problema radica en la lógica del controlador frontal. La página que contiene la consulta se invoca erróneamente durante todas las solicitudes, incluidas las no válidas (por ejemplo, recursos inexistentes). Este comportamiento provoca la ejecución de la consulta varias veces, lo que genera inserciones duplicadas.
Para solucionar el problema, modifique la lógica del controlador frontal. Evite que ejecute la solicitud para solicitudes no válidas. Esta modificación eliminará las inserciones falsas que de otro modo podrían afectar la base de datos tras el lanzamiento del sitio web.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3