Mysql
 sql >> Datenbank >  >> RDS >> Mysql

derselbe angemeldete Benutzer hat unterschiedliche Sitzungs-IDs zugewiesen (in verschiedenen Browsern)

Wenn Sie die Sitzung in der Datenbank speichern, fügen Sie einen Mechanismus hinzu, bei dem die Benutzer-ID als Teil des Sitzungsdatensatzes Ihrer Datenbank gespeichert wird, wodurch das erstellt wird, was ich gerne eine "semantische Sitzung" nenne. Wenn sich der Benutzer anmeldet, prüfen Sie, ob bereits eine andere Sitzung besteht; Verwenden Sie in diesem Fall session_id() um die neue Sitzung auf die ID der alten Sitzung zu fixieren, die ihnen beitritt (und die ID Ihrer neuen Sitzung für alle nachfolgenden Anfragen ändern sollte). Stellen Sie sicher, dass Sie diese Aktion nur während des Anmeldeschritts ausführen, oder Sie könnten mit verrückten Rennbedingungen enden, bei denen zwei Sitzungen versuchen, sich gegenseitig zu sein und sich zu "tauschen".