Mysql update automatique

Signaler
Messages postés
17
Date d'inscription
mercredi 25 août 2010
Statut
Membre
Dernière intervention
21 octobre 2011
-
Messages postés
17
Date d'inscription
mercredi 25 août 2010
Statut
Membre
Dernière intervention
21 octobre 2011
-
Bonjour a tous,
je suis en train de faire un petit jeu de strategie PHP Mysql et le problème et le suivant:
j'ai dans ma base une table joueur qui a des camps (or, bois etc...) chaque joueur peux avoir un certain nombre de mines et en fonction de ce nombre les ressource de chaque joueur vont augmenter. ce que je cherche c'est un solution qui ferai en sorte que meme si le joueur n'est pas connecté des mise se ferons quand meme dans la base.
j'ai pensé a mettre en place un script php qui dès la connexion du joueur, calcule suivant le nbr de mine et la derniere connexion du joueur à la base le nombre des ressource et fais des update dans la base sauf que cette solution me parrait un peu tiré par les cheveux!
je sais pas si jété clair mais si qq à une autre solution à me proposer je serai prenant
merci d'avance de votre aide

5 réponses

Messages postés
197
Date d'inscription
mardi 20 janvier 2004
Statut
Membre
Dernière intervention
20 février 2013
1
Bonjour,

regarde du coté de cron (sur *nix) ou at (planificateur de tâches pour win) pour exécuter périodiquement des actions sans intervention de toi ou du joueur.

en espérant t'avoir aidé

bonne journée
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
16
Salut,

Pourquoi est-ce que la solution te paraît tirée par les cheveux ?
Même des calculs complexes ne résistent pas à plusieurs exécutions (qui simulent les intervalles de temps) dans une boucle. Oui, c'est un peu plus long à la première "re-connexion" et ça consomme des ressources, mais ça ne se produit qu'une fois par visite.
Si les joueurs intéragissent entre eux, il suffit de faire les mises à jours de chacun suivant les implications des autres (et inversement... j'espère être clair).

Sinon, effectivement, cron est une bonne solution, qui permet d'exécuter des scripts PHP. Si tu n'as pas accès à ce service chez ton hébergeur (bien qu'il soit en cours de démocratisation chez les hébergeurs sérieux), tu peux jeter un oeil à webcron qui permet de faire ça depuis une interface web tierce.

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Messages postés
17
Date d'inscription
mercredi 25 août 2010
Statut
Membre
Dernière intervention
21 octobre 2011
1
la solution des cron n'est pas celle que je cherche car elle ne fera qu'augmenter inutilement le nombre de requête à exécuter et de tte les façon quand qq va se connecter sur mon site il doit en s'authentifiant lancer une requête de update dans la base afin de lui afficher ses champs (ressource).
pour la solution que j'ai proposé plus haut et qui consiste a faire script qui calcul et fait des update selon la dernière déconnexion de chaque joueur je trouve qu'elle va peut être ralentir ma page index !! à moins qu'il y a une meilleur solution :-)
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
16
En fait, il n'y a pas vraiment d'autre solution...
Soit tu fais des updates régulièrement, soit tu fait un lot d'updates à la connexion. Je vois pas d'alternative.. Dans le premier cas, il faut utiliser cron ou un équivalent (webcron ?), dans le second, c'est ta solution qui revient à "simuler" des updates à intervalles réguliers en une seule fois...

--
Neige

Souvent la réponse à votre question se trouve dans la doc. Commencez par là ;)
Messages postés
17
Date d'inscription
mercredi 25 août 2010
Statut
Membre
Dernière intervention
21 octobre 2011
1
oui cava être un peu difficile vu toute les contrainte que j'ai actuellement mais je ne vois pas non plus d'autre alternative!! merci de votre réponse.