Programmation de ce type de site

Signaler
-
 Hadus -
Bonjour,

Comment creer un site qui fait des stastiques ?

Par exemple on veut connaitre les supporteurs dune equipe de football, leur categorie d'age tel pourcent à de 18 à 35 , tel pourcentage c'est des hommes ou des femmes ?
Sachant que chaque supporteut doit entrer ses données dans une autre fenetre
Pour avoir un resultats finales avec des barres de stastistiques

1 réponse

Messages postés
32059
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 avril 2021
3 394
Bonjour,

Ca dépend si les formules pour calcules les statistiques sont sur des données bien précises que tu aura choisi... ou si penses que les utilisateurs pourront définir eux même ce qu'ils veulent calculer ( ce qui sera bien plus complexe à réaliser )

Pour ce qui est de renseigner les valeurs :
Un formulaire HTML + PHP qui ira stocker les données en BDD
Pour faire les graphiques : Tu as le choix avec plein de librairies disponibles pour ça sur le net .. par exemple, C3.js , google chart ..etc..
Et pour faire le lien entre les données en bdd et les graphiques .. et bien... du PHP qui ira chercher les données en BDD et qui fera ensuite les différents calculs pour créer les graphiques.

Si tu ne t'y connais pas assez en PHP/SQL/Javascript/html/Css ... commence par apprendre ces différents langages en suivant des tutos et en faisant des exercices un peu plus simples.
Sinon tu auras beaucoup.. beaucoup.. de mal à réaliser les pages dont tu viens de nous parler.



Merci, oui ce n'est pas trés clair ce que j'ai écrit

Les utilisateurs ne doivent rien faire, ils ne décident sur rien,
ils vont juste taper leurs infos sur des fenetres, des formulaires, ou il y'a des cases à remplir

Puis ces infos doivent etre stockés et affichés dans une autre page en forme de stastistiques générales

Merci je vais m'éxercer un peu. j'éssairais de faire les formulaires pour le moment puis j'avancerais un peu
> heureux_prince
Salut,
euh c'est déjà une décision ou plutôt une interaction:

"ils vont juste taper leurs infos sur des fenetres, des formulaires, ou il y'a des cases à remplir "

Parce que si personne ne remplit rien vous pouvez avoir toutes les formules que vous voulez vous n'aurez pas de calcul.

Les formulaires ce qui va compter c'est leur traitement.

Pour stocker des données(informations en terme d'informatique) il faut une base de données.
Sur le web c'est un programme serveur qui va faire cela(php, asp par exemple)

Un peu de lecture qui devrait vous aider(c'est très général bien sûr, passer à des cas pratiques et explications complémentaires une fois assimilé):

https://www.commentcamarche.net/contents/1083-systeme-d-information


Bien sûr une donnée calculable à partir des autres n'a rien à faire dans la base de données(à part ralentir celle ci compliquer son fonctionnement et son développement et utilisation ça ne fera rien).

Exemple:

Un client achète 10 articles identiques au même prix et sans réductions.

La base de données ne doit stocker uniquement que le prix de l'article en question.
Il faudra de toute façon passer par une partie programme pour qui faire
10Xprix unitaire de l'article
n'est pas vraiment complexe.

Bien sûr mon exemple est simpliste mais c'est une des règles pour qu'un système d'information soit fonctionnel.

Mettons par exemple que lorsque que l'on définit le système d'information on ait la demande que le prix des articles puisse changer. Pas vraiment quelque chose de rare je pense.

Associer une date début/fin au prix de l'article permettra de régler ce problème(et de retenir et différencier chaque article à la date voulue, la facture comprends donc la date aussi et en recoupant celles ci on trouve le bon prix à une date donnée).
Ou de manière plus simple on peut estimer qu'un article sera considéré comme un nouvel article. Si ça paraît plus pratique à mettre en place ça l'est moins dans l'utilisation(comment obtenir toutes les ventes d'un article à des prix différents au long des années par exemple? C'est impossible dans cette modélisation de données).

Bref votre question de formules c'est moins l'arithmétique qui est simple à mettre à place dans un programme qu'une question de définition et lister et regrouper les données nécessaires de façon pertinente. Un domaine à part(et concomitant à tous les autres) de la conception informatique.
Un calcul n'est possible que si vos données sont organisés dans un système cohérent.

La partie qui les recueille (formulaire) c'est un détail ou plutôt elle s'appuie sur la logique intréseque des données:
modélisation conceptuelle des données => puis modélisation logique des données: les tables de données sur une base qui peuvent comporter des liaisons pour faire des concordances.

Dans mon exemple simple: une table facture, une table client, une table article vendu seront liées pour pouvoir recouper chacune des données et trouver pour tout client tout ses achats, le total de chaque facture de toutes les factures, la variation éventuelle des prix, etc...

J'ai trouvé ça pour un un peu plus complet:

https://courses.ex-machina.ma/downloads/Miage1/S2/SGBD/Modelisation_Des_Systemes_Information.pdf

Bien sûr il faut que vous soyez déjà au point avec les technologies de bases des sites qui emploient des bases de données(99% des sites) mais même comme ça on est dans la partie qui fait appel qu'au cerveau; plus ou moins, la méthode Merise présentée ici est justement faite pour éviter de tomber dans la logique humaine et (surtout) se rapprocher le plus du système informatique-le traitement des informations, en acquisition, lors de l'utilisation et/ou la demande de celles ci- qui est bien plus sûr( beaucoup plus bête qu'un cerveau humain mais aussi plus efficace à traiter des valeurs en vue d'obtenir un résultat(logique mathématique, logique arithmétique, logique d'entités qui regroupent par "affinités" les données).
Au final appliquée cette méthode permet d'avoir un système d'information efficace(le plus simple pour le meilleur résultat), fonctionnelle(qui correspond aux besoins exprimés) et maintenable(c'est fait pour durer et pour garder l'intégrité des données enregistrées) voire l'optimisation(on peut déjà prévoir justement ce qui n'est pas prévu à la base et si c'est bien fait ajouter des données non prises en compte dans la 1ère version sans avoir à tout refaire et dans perdre les données déjà existantes).