|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Fonctions calculs sql/php pour projet football [ Archives / Besoin d'aide pour ma base de données ] (spamyx)
Informations & options pour cette discussion
mardi 25 avril 2006 à 10:51:56 |
Fonctions calculs sql/php pour projet football

spamyx
|
Je suis webmaster dun site de tournoi en ligne sur le jeu vidéo de football PES 5 et jaimerais créer une rubrique STATS en exploitant les fonctions de calcul de Mysql et PHP.
Je m'explique...
Je veux utiliser le système de base de données Mysql couplé à PHP pour :
1/ Après chaque match joué , je rentre le score du match dans ma base de données (table Match) et mon site se met à jour dynamiquement ( ex : le joueur1 gagne 2-0 contre le joueur2 donc les stats de victoires de joueur1 augmentent dans son profil)
2/ Une page duel qui permettrait de comparer les résultats entre 2 joueurs grâce à la base de données Match sur cette forme là :
[IMG]http://img64.imageshack.us/my.php?image=duel5jg.gif[/IMG]
Voici les tables que je pense utiliser pour ma base de données avec leur principaux champs :
[URL=http://imageshack.us][IMG]http://img112.imageshack.us/img112/3379/sqltable2ja.gif[/IMG][/URL]
Mes questions sont :
1/ Quelle est la meilleure stratégie pour un tel projet ? Est ce que mes bases sont bien construites ou doit je faire plus simple (évitez les doublons ?) ?
2/ Comment gérer les calculs dans Mysql, notamment pour calculer si le nombre de Victoires ou Défaites (du style : si score1>score2 alors Victoire pour joueur1 et défaite pour Joueur2) et afficher les résultats sur une page de cette manière là :
affichage résultats par joueur :
[IMG]http://img512.imageshack.us/img512/7204/player8jj.gif[/IMG]
affichage résultats par duel :
[URL=http://imageshack.us][IMG]http://img64.imageshack.us/img64/6981/duel5jg.gif[/IMG][/URL]
En espérant que vous ayez compris mes problèmes.
Je débute en php et sql, jai donc bcp de questions mais je suis motivé par ce projet donc si quelquun peux maider dans ma démarche, au moins en me donnant le résonnement à utiliser pour faire un tel projet
Merci
|
|
|
mardi 25 avril 2006 à 10:54:59 |
Re : Fonctions calculs sql/php pour projet football

spamyx
|
Je suis webmaster d’un site de tournoi en ligne sur le jeu vidéo de football PES 5 et j’aimerais créer une rubrique STATS en exploitant les fonctions de calcul de Mysql et PHP.
Je m'explique...
Je veux utiliser le système de base de données Mysql couplé à PHP pour :
1/ Après chaque match joué , je rentre le score du match dans ma base de données (table Match) et mon site se met à jour dynamiquement ( ex : le joueur1 gagne 2-0 contre le joueur2 donc les stats de victoires de joueur1 augmentent dans son profil)
2/ Une page duel qui permettrait de comparer les résultats entre 2 joueurs grâce à la base de données Match sur cette forme là :
[IMG]http://img64.imageshack.us/my.php?image=duel5jg.gif[/IMG]
http://img64.imageshack.us/my.php?image=duel5jg.gif
Voici les tables que je pense utiliser pour ma base de données avec leur principaux champs :
[URL=http://imageshack.us][IMG]http://img112.imageshack.us/img112/3379/sqltable2ja.gif[/IMG][/URL]
http://img112.imageshack.us/my.php?image=sqltable2ja.gif
Mes questions sont :
1/ Quelle est la meilleure stratégie pour un tel projet ? Est ce que mes bases sont bien construites ou doit je faire plus simple (évitez les doublons ?) ?
2/ Comment gérer les calculs dans Mysql, notamment pour calculer si le nombre de Victoires ou Défaites (du style : si score1>score2 alors Victoire pour joueur1 et défaite pour Joueur2) et afficher les résultats sur une page de cette manière là :
affichage résultats par joueur :
[IMG]http://img512.imageshack.us/img512/7204/player8jj.gif[/IMG]
http://img512.imageshack.us/img512/7204/player8jj.gif
affichage résultats par duel :
[URL=http://imageshack.us][IMG]http://img64.imageshack.us/img64/6981/duel5jg.gif[/IMG][/URL]
http://img64.imageshack.us/my.php?image=duel5jg.gif
En espérant que vous ayez compris mes problèmes.
Je débute en php et sql, j’ai donc bcp de questions mais je suis motivé par ce projet donc si quelqu’un peux m’aider dans ma démarche, au moins en me donnant le résonnement à utiliser pour faire un tel projet…
Merci…
|
|
|
mardi 25 avril 2006 à 14:27:16 |
Re : Fonctions calculs sql/php pour projet football

Mindiell
|
Bonjour, je pense que tes tables sont males construites. Il faut en effet éviter les doublons et séparer les données non intéressantes.
Mon exemple :
Joueurs
ID | Nom | Prénom | Nationalite | Pseudo
Equipes (un joueur peut donc posséder plusieurs équipes, comme dans ton exemple)
ID | Nom | Joueur_ID
Match
ID | Tournoi_ID | Date | Equipe1_ID | Score1 | Equipe2_ID | Score2
Tournoi
ID | Nom
etc...
Il me semble important qu'au moment ou tu inseres un nouveau resultat de match que ca soit le php qui vérifie qui a gagné et mette à jour ces informations
Par exemple, plutot que de refaire plein de calculs, on peut rajouter des colonnes pour chaque équipe genre :
Victoires | Défaites | Nuls
colonnes mises à jour par une requete php suivant le vainqeur/perdant...
Tu peux ainsi recouper tes informations dans beaucoup de sens et effectuer un maximum de statistiques...
|
|
|
mardi 25 avril 2006 à 15:43:42 |
Re : Fonctions calculs sql/php pour projet football

spamyx
|
Effectivement je pense que mes bases sont mal construites et je vais m'appuyer sur ta structure .
Je vais donc créer en plus une table Equipes.
mais je ne comprends pas pourquoi il y a dans cette table le champ Joueur_ID car cela voudrait dire que je dois rentrer toutes les combinaisons de joueurs/équipes dans cette table ???
Ne vaut il pas mieux intégrer le champ Joueur_ID dans la Table Match comme ceci :
Match
ID | Tournoi_ID | Joueur1_ID | Equipe1_ID | Score1 | Score2 | Equipe2_ID | Joueur2_ID |
Cette table Match aurait donc 5 clés étrangères si j'ai bien compris...
Le 2eme point concernant le traitement des resultats avec le php qui vérifie qui à gagné ou perdu ainsi que les colonnes mise à jour m'intéressent fortement mais pourrait tu être plus précis en donnant des exemples STP?
Car perso, je croyais que ces calculs devaient être réalisés dans SQL...
Merci
PS: j'ai l'impression que ce projet va m'occuper un bon bout de temps...
|
|
|
mardi 25 avril 2006 à 20:19:30 |
Re : Fonctions calculs sql/php pour projet football

Mindiell
|
Pour les équipes : Quelles sont les possibilités ? Une équipe n'appartient pas à un joueur ?
Pour les calculs : Quand tu rentres les résultat d'un match sur ton site web, le php va demander à SQL de sauver les informations dans ta base, il va aussi demander (suivant le score) à augmenter un des compteurs (victoire/défaite/nul) de chaque équipe, etc... Il lance simplement plusieurs mises à jour à la suite. Ca permet d'évitre trop de calculs pour chaque affichage
|
|
|
mardi 25 avril 2006 à 20:34:15 |
Re : Fonctions calculs sql/php pour projet football

spamyx
|
Pour les équipes : Un joueur n'a pas d'équipe fixe. Exemple : Pour le tournoi 01 et le tournoi 06, le joueur Damyx aura l'équipe Lyon mais pour le tournoi 02 c'est le joueur Sebastien qui aura Lyon. Chaque joueur peut avoir plusieurs équipes par tournoi : Pour le tournoi 01, le joueur damyx a l'équipe Lyon et PSG par exemple....
Est ce que çà à une incidence sur la composition des tables équipes? Ce qui donnerait : Table Equipes (un joueur peut donc posséder plusieurs équipes, comme dans mon exemple) ID | Nom | Joueur_ID
Ce qui reviendrait à créer autant d'ID Equipe que de combinaison Equipe/Joueur. Exemple : Table Equipes ID | Nom | Joueur_ID 1 | Lyon | 1 (Damyx) 2 | Lyon | 4 (Sebas) 3 | Lyon | 12 (Guillaume) 4 | PSG | 4 (Sebas)
La table Match deviendrait (exemple): Match ID | Tournoi_ID | Equipe1_ID | Score1 | Equipe2_ID | Score2 1 | 1 | 1 | 2 | 4 | 0
avec 3 clés étrangères? La table match serait rempli qu'avec des chiffres du coup.... pas évident à rentrer tous çà !
Pour les calculs, la requête php m'a l'air assez complexe... Peux tu me donner un exemple du code ?
Merci
|
|
|
mercredi 26 avril 2006 à 01:43:10 |
Re : Fonctions calculs sql/php pour projet football

Mindiell
|
Alors :
Plus tu veux syntetiser, plus il y aura de "chiffres incomprehensibles", c'est pour cela qu'il te faut une interface web pour remplir tout ca de manière compréhensible...
Ta table équipe perd la notion de tournoi (Damyx possède Lyon pendant quel tournoi ?)
Donc plutot Equipes identiques, mais sans Joueur_ID, et une nouvelle table que je vais appeler Formations :
Formation
ID | Joeuur_ID | Equipe_ID |Tournoi_ID
Permettant un maximum de possibilités.
Pour les résultats, la table match contient bien ce que tu as indiqué.
Pour le code, je vais te donner les differentes requetes et l'algo en gros :
Tu crées un match Lyon-PSG 2-0 (comme dans ton message ci-dessus, si j'ai bien suivi) :
Insérer Match => INSERT INTO Match (Tournoi_ID, Equipe1_ID, Score1, Equipe2_ID, Score2) VALUES (1, 1, 2, 4, 0)
On considère les ID en incrément automatique
Puis, comme Lyon a gagné, => UPDATE Equipes SET Victoire = Victoire + 1 WHERE ID = 1 (ID de Lyon)
Puis, comme PSG a perdu, => UPDATE Equipes SET Defaite = Defaite + 1 WHERE ID = 4 (ID de PSG)
Maintenant, souhaites-tu garder tes scores par equipe ou par tournoi ? Si c'est par eqiupe, fais comme ca, par tournoi, il faut alors deplacer tes colonnes Victoire/Defaite/Nul dans la table Formations, permettant de faire les calculs de Victoire/Defaite/Nul par equipe, par joueur et/ou par tournoi...
Bon courage !
|
|
|
mercredi 26 avril 2006 à 10:18:24 |
Re : Fonctions calculs sql/php pour projet football

spamyx
|
En fait, je souhaite garder les resultats (scores) par Joueur pour savoir si le joueur Damyx a plus de victoires, marque plus de but que le joueur Sebastien. Le but de cette base de données est que je puisse calculer automatiquement les profil Victoires/Nuls/Défaites, buts marqués etc... de Tous les joueurs... Après si je peux faire des filtres par équipes c'est du bonus, mais le plus important sont les Joueurs... Donc est ce que çà remet en cause la construction de la table Match car il n'y a pas le champ Joueur ID?
Pour les UPDATE, ya t'il un moyen pour qu'ils soient fait automatiquement. C'est à dire lorsque je rentre le résultat dans ma table match, il puisse l'analyser (score1<score2 donc défaite Equipe1)et incrémenter de +1 la colonne défaite de l'Equipe1. ?? Quel fonction faut il utiliser dans ce cas? Ou sinon faut il réecrire toutes les requête d' UPDATE après chaque match?
Merci vraiment pour ta patience... Je progresse dans mon résonnement...
|
|
|
lundi 5 juin 2006 à 19:12:02 |
Re : Fonctions calculs sql/php pour projet football

spamyx
|
De retour sur mon projet... Et je me rends compte que c'est très compliqué ces langages SQL, php pour un pauvre webdesigner comme moi... Mais je ne desespère pas et j'ai donc avancé sur mes bases SQL : Voici les principales tables avec leurs principaux champs : TABLE Joueur : id / nom_joueur / description / photo TABLE Equipe id/ nom_equipe / flag TABLE Tournoi id/ nom_tournoi / jeux / date TABLE Elimination (ex :poule, 1/4 finale, 1/2 etc) id/ nom_elimination TABLE Matchs : (dans cette table ya que des chiffres  ) id/ tournoi_id / joueur_id / equipe1_id / score1 / score2 / equipe2_id / joueur2_id / elimination_id La TABLE Matchs étant la clé de la Matrice  car il ya plusieurs clés étrangères.. Et c'est là mon problème... Je n'arrive pas avec une requête à lire les données de ma table MATCHS . J'arrive à faire une jointure (avec les champs communs "joueur_id" "equipe1_id" mais impossible de faire la jointure avec les champs "joueur2_id et "equipe2_id"... En fait le problème c'est que ma table MATCHS à des clés étrangères (ex: joueur1_id et joueur2_id) qui font référence à la même table JOUEUR ( et donc théoriquement devrait se joindre sous la forme WHERE matchs.joueur1_id=joueur.id AND matchs.joueur2_id=joueur.id )....mais çà marche pas... Si quelqu'un peut m'aider... Toute tentative de requête sera appréciée....
|
|
|
lundi 5 juin 2006 à 19:23:27 |
Re : Fonctions calculs sql/php pour projet football

Mindiell
|
Salut,
SELECT * FROM Matchs, Joueur AS j1, Joueur AS j2 WHERE Match.joueur1_id = j1.id AND Match.joueur2_id = j2.id
et voilà ;) En fait, ca crée un alias pour une table, tu peux alors utilser plusieurs tables à la fois en les distinguant parfaitement ;)
Mindiell Software
|
|
|
Cette discussion est classé dans : php, http, img, us, imageshack
Répondre à ce message
Sujets en rapport avec ce message
Creer base SQL Serveur en vb.net [ par chris81 ]
bonjourcomment puis je faire pour creer ma base de donnee dans un sql serveur à partir de mon application?mercihttp://www.tarnweb.comhttp://www.correz
remettre compteur auto a zero [ par chris81 ]
bonjour,j'ai cree un table avec un compteur automatique, j'ai fait 3 test dessusmaintenant je souhaite remettre le compteur a zero car il part de 4 co
Problème SQLSERVER/php [ par LeJulius ]
Je travaille actuellement sous SQL SERVER 2000 en lien avec du PHP 4.2.0 Mon problème est le suivant :Mes tables sql contiennent des caractères accent
convertir string en money [ par chris81 ]
comment puis je faire pour convertir un string pour l'inserer dans mon champ de type moneymercihttp://www.correzeweb.comhttp://www.localetv.com
3 tables 1 requête [ par kclito ]
bonjours, (j'avoue que je ne savais pas si je devais mettre ça dans le forum php ou sql ....) Je vous explique mon problème J'ai 3 tables CATEGORIE
Prob avec LIKE et MySQL [ par Dark Angel ]
Salut,j'ai 1 petit prob avec LIKE et MySQL en PHP: quand je fai la requete, ça ne retourne aucun resultat.J'utilize EasyPHP pour tester les fichiers P
Incrémentation num_auto qui ne commence pas a "1" [ par MrJAY42 ]
MrJAY42Bon je sais que c'est pas un forum SQL mais je fais mon site en php/MYSQLBon alors voila : je fais une table dans laquelle seront stockés des f
apache2.0.54 + mysql4.3 + php5.0.4 phpmyqdmin 2.6.4 problème de configuration [ par GoldPegasus ]
bon mon problème c'est que j'ai installé un serveur complèt sur une platforme windows 2003 serveur j'ai installé apache avec php 5 tous vas bien,j'ins
Cherche developpeur php/mysql pour un Site Internet [ par groupmat ]
Bonjour,je cherche un developpeur connaissant le language php. Mon but est de trouver un associé souhaitant se lancer dans un projet de site Intenet
probleme sql [ par biloutte33 ]
bonjour,je crée un site avec dreamweaver 8 et j'ai configurer dessus ma base mysql de freej'ai créé un espace membre, mais quand je click sur envoyer,
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|