Créer un jeu de morpion (tic tac toe) jouable a distance en temps réel par 2 joueurs connectés

Eléphanteau du PHP | 27 Messages

28 déc. 2019, 02:38

Salut,

Voilà, j'aimerais bien créer des jeux en lignes temps réel à 2 joueurs connectés.
Je commence par le morpion (ça pourrait être puissance 4) pour faire simple.

Mon idée :
- J'affiche les pions à l'écran sur une grille
- quand je commence la partie, mon site note mon IP et m'identifie comme joueur 1.
- Je joue. Les positions du jeu s'enregistre dans la base de donnée MySQL.

- le joueur 2 se connecte.
- le site lit les data MySQL et lui affiche la grille du jeu et les pions.
- il joue, et ça s'enregistre dans la DB.

Mais comment faire pour que ma page se rafraichisse dès qu'il a joué et que je puisse jouer à mon tour?
Et pareil pour lui?

Je peux faire un meta refresh, mais les pages vont se recharger toutes les 5 secondes...

Ajax pourrait faire ça? Quelqu'un aurait ces quelques lignes d'Ajax pour que
je puis rafraichir la page dès que l'autre joueur a joué un coup? Ou une autre techno si Ajax ne convient pas.

Voilà, mon idée vous parait-elle réalisable?

Merci beaucoup! Je mettrai le code source en ligne si j'arrive à faire ce truc.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

28 déc. 2019, 17:17

2 possibilités :
- Soit Ajax qui va faire des appels régulier (disons toutes les 5 secondes) pour voir si il y a du nouveau côté serveur
https://developer.mozilla.org/fr/docs/W ... ttpRequest
https://api.jquery.com/jquery.get/

- Soit les websockets qui sont bien plus complexes à mettre en oeuvre.
https://developer.mozilla.org/fr/docs/W ... plications
Pour ton besoin simple, Ajax sera + adapté.
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 27 Messages

29 déc. 2019, 01:24

SAlut @rthur!

Cool! Je commence tout de suite à étudier Ajax alors vu que je n'ai pas un niveau de fou :)

Merci pour les liens! Pourrai-je poster ici mon code source dans un JSfiddle ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

30 déc. 2019, 18:39

Pourrai-je poster ici mon code source dans un JSfiddle ?
Oui, mais si tu as un problème spécifique, c'est souvent contre-productif de balancer tout son code pour demander de l'aide.
Il est préférable d'indiquer précisément dans ton message les 3/4 lignes de code qui ne fonctionnent pas comme prévu (et ça peut être en complément d'un JSfiddle)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 27 Messages

31 déc. 2019, 04:27

Ok, merci @rthur, je fais comme ça. :wink: