Me revoilà^^
J'ai terminé ma page qui simulera la gestion d'une connexion entre deux joueurs.
Concrètement, j'ai deux types d'user:
User 1: Va sur la page et attend user2 pour un match
User2: Arrive sur la page et voit que user1 attend donc peut partir directement dans son match.
Pour user2, pas de soucis.
Pour user 1: Une fois que je me suis logué dans la table d'attente, je dois vérifier régulièrement si un user2 est arrivé (via un boolean dans la table).
Sauf que, cette vérification, je ne sais pas vraiment comment la faire.
Ma première idée, c'était de bloquer l'utilisateur sur une page qui se rechargement toute seule jusqu'à ce qu'un user2 arrive.
C'est clair que ça fonctionnera, mais il y a deux soucis:
1- Je bloque l'user sur la page et il ne peut rien faire d'autre à part observer sa page se recharger indéfiniment si personne n'arrive.
2- Je blinde l''historique de mon user avec une seule page
Bref, c'est vraiment pas top et en plus je suis sûr que je surchargerais le serveur d'olympe qui est déjà pas super top en perf^^
J'avais aussi pensé à essayer d'adopter une sorte de timer avant de recharger la page, mais ça impliquerait de synchro également avec l'user 2 pour qu'ils partent en même temps, et ça serait vraiment trop galère.
Du coup, voyez-vous une autre solution ?
Je vois déjà le mot magique AJAX arriver; mais j'ai encore du mal à voir comment ça va marcher.
Est-ce qu'une page appelé par AJAX (donc qui ne perturbera pas l'affichage de l'user) pourra néanmoins faire une redirection sous certaine condition avec un header location ?