Je veux donner 100 pts à tout les joueurs comment faire ?
Fermé
On3x
Messages postés
164
Date d'inscription
mardi 20 septembre 2011
Statut
Membre
Dernière intervention
2 mars 2020
-
13 juin 2014 à 18:15
jee pee Messages postés 40463 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 20 novembre 2024 - 17 juin 2014 à 00:18
jee pee Messages postés 40463 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 20 novembre 2024 - 17 juin 2014 à 00:18
A voir également:
- Je veux donner 100 pts à tout les joueurs comment faire ?
- 100 mo en go - Forum Mobile
- Need for speed switch 2 joueurs - Forum Jeux vidéo
- Processeur utilisé a 100 en jeu ✓ - Forum Windows 10
- A quoi correspond 1 Go en Mo ✓ - Forum Windows
- Gta 5 2 joueurs ✓ - Forum PS3
3 réponses
ElementW
Messages postés
4816
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
5 octobre 2021
1 228
Modifié par gravgun le 13/06/2014 à 18:28
Modifié par gravgun le 13/06/2014 à 18:28
'lut, ça se fait en une requête:
En revanche pour les IP identiques c'est plus compliqué, pas infaisable mais il faut y réfléchir:
- l'IP peut être dynamique et j'imagine que tu stockes la dernière IP connue, or une personne peut venir avec une IP n°1, changer en IP n°2, ne pas revenir avec, et un autre joueur peut avoir eu l'IP n°1 entre temps.
- à quel compte donner dans le cas d'IP identiques?
from human import idiocy
del idiocy
UPDATE betacraft.cms_membres SET token = token + 100
En revanche pour les IP identiques c'est plus compliqué, pas infaisable mais il faut y réfléchir:
- l'IP peut être dynamique et j'imagine que tu stockes la dernière IP connue, or une personne peut venir avec une IP n°1, changer en IP n°2, ne pas revenir avec, et un autre joueur peut avoir eu l'IP n°1 entre temps.
- à quel compte donner dans le cas d'IP identiques?
from human import idiocy
del idiocy
On3x
Messages postés
164
Date d'inscription
mardi 20 septembre 2011
Statut
Membre
Dernière intervention
2 mars 2020
8
13 juin 2014 à 20:31
13 juin 2014 à 20:31
Salut, tout dabord merci pour la première requête :)
Enfaite, si jamais les ip sont identiques (je veux juste vérifier si jamais il y a 2 ip pareils, après les autres options j'oublie) je ne donne des token à celui qui a l'id le plus proche de 0
Ex : Benjamin est le 144 membre et possède l'id 144
il a voulu se créer un 2e compte directement à la suite et celui ci possède l'id 145
dans la requête benjamin recevra les 100 tokens, mais pas son 2e compte avec la même ip
est ce que je suis clair :p ?
Enfaite, si jamais les ip sont identiques (je veux juste vérifier si jamais il y a 2 ip pareils, après les autres options j'oublie) je ne donne des token à celui qui a l'id le plus proche de 0
Ex : Benjamin est le 144 membre et possède l'id 144
il a voulu se créer un 2e compte directement à la suite et celui ci possède l'id 145
dans la requête benjamin recevra les 100 tokens, mais pas son 2e compte avec la même ip
est ce que je suis clair :p ?
On3x
Messages postés
164
Date d'inscription
mardi 20 septembre 2011
Statut
Membre
Dernière intervention
2 mars 2020
8
15 juin 2014 à 23:09
15 juin 2014 à 23:09
up
jee pee
Messages postés
40463
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
20 novembre 2024
9 421
Modifié par jee pee le 16/06/2014 à 01:46
Modifié par jee pee le 16/06/2014 à 01:46
Salut,
Une requete comme celle là devrait ne sélectionner qu'un membre par ip
Et donc pour la mise à jour faire :
Cdlt
Un étranger, c'est un ami qu'on n'a pas encore rencontré.
Une requete comme celle là devrait ne sélectionner qu'un membre par ip
SELECT MIN(id) FROM betacraft.cms_membres GROUP BY ip
Et donc pour la mise à jour faire :
UPDATE betacraft.cms_membres SET token = token + 100 WHERE id IN (SELECT MIN(id) FROM betacraft.cms_membres GROUP BY ip)
Cdlt
Un étranger, c'est un ami qu'on n'a pas encore rencontré.
On3x
Messages postés
164
Date d'inscription
mardi 20 septembre 2011
Statut
Membre
Dernière intervention
2 mars 2020
8
16 juin 2014 à 09:25
16 juin 2014 à 09:25
merci bcp !
il faudra que j'apprenne le sql :p
@+
il faudra que j'apprenne le sql :p
@+
On3x
Messages postés
164
Date d'inscription
mardi 20 septembre 2011
Statut
Membre
Dernière intervention
2 mars 2020
8
16 juin 2014 à 23:11
16 juin 2014 à 23:11
ça m'a mis ça :/
#1093 - You can't specify target table 'cms_membres' for update in FROM clause
#1093 - You can't specify target table 'cms_membres' for update in FROM clause
jee pee
Messages postés
40463
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
20 novembre 2024
9 421
Modifié par jee pee le 17/06/2014 à 00:18
Modifié par jee pee le 17/06/2014 à 00:18
Je comprends le message, il ne veut faire faire une maj sur lui même.
Je n'utilise pas mysql, mais oracle où une telle requete doit marcher.
On va faire en 2 temps, créer une table temporaire qui stocke les id, puis utiliser cette liste pour la mise à jour.
Je n'utilise pas mysql, mais oracle où une telle requete doit marcher.
On va faire en 2 temps, créer une table temporaire qui stocke les id, puis utiliser cette liste pour la mise à jour.
CREATE TABLE betacraft.temp_id AS SELECT MIN(id) AS id FROM betacraft.cms_membres GROUP BY ip UPDATE betacraft.cms_membres SET token = token + 100 WHERE id IN (SELECT id FROM betacraft.temp_id)