Salut tout le monde,

Depuis quelques temps je développe un site basé sur les ouvertures des stations de ski, le tout à but personnel au départ, puis comme projet de fin d'année pour les cours. Le voici : EtatPistes.com
Il permet entre autres, parmis une sélection de 80 stations de ski, de voir l'état d'ouverture de leurs pistes, leurs météo, leurs webcams, localisation sur Google Maps, etc etc... Et également de s'inscrire pour mettre en favoris des stations (accès + rapide aux infos), posts d'avis, par exemple.

Tout d'abord, j'aimerai vos avis en tant que visiteurs, mais aussi en tant que développeurs : tout est réalisé en PHP, mais pas en POO. Le code devient donc relativement lourd à maintenir, et il y a probablement de quoi améliorer les performances..

Je ne me suis pas encore trop lancé dans la POO, et j'ai du mal à voir exactement ce qui pourrait être mit dans des class. Les membres, les stations, etc ?

Pour info j'ai actuellement, en quelque sorte, une fonction pour chaque classement, etc, et donc pas mal de requêtes en base de données....

Merci d'avance ! :)

7 réponses


Le design est sympa et le site est très pratique même si tu pourrais améliorer encore un peu l'éergonomie. En effet, j'ai essayé en choisissant l'Alpes d'Huez. Il y a beacoup de pistes/remontées, je pensai que ce serait plus pratique avec des sections déroulantes par secteurs ou alors avec une mise en page en 2 colonnes. Parce que si notre piste est tout à la fin, on met trois plombes pour la trouver.

Il y a aussi quelques images pixelisées (piste de luge, TMX et TSDB (pas tous)).

Une appli mobile en prévision ?

Bravo et bonne continuation !

Voxran
Auteur

Merci pour le retour,

En effet j'avais testé l'idée des sections déroulantes, mais j'avais eu quelques soucis et j'avais abandonné. L'idée de la page en 2 colonnes est faisable par contre. :)

Malheureusement les images pixelisées ne viennent pas de moi (toutes ces icônes sont en quelque sorte "récupérées" d'un site officiel), et celles que tu soulignes n'ont pas étés faites à la même dimension que les autres... En gros, je vais devoir les refaire moi même. :/

A la base j'aurai aimé en faire une appli mobile, mais ne connaissant pas le java, je me suis repporté sur un site avec un design responsive. ;)

Merci !

Moi je vais parler codes PHP ^^ Pour l'objet on peut imaginer un objet "Station" "Piste" "Meteo"... Après fait la transition progressivement ^^

Voxran
Auteur

Merci pour ta réponse Grafikart ! :)

Je suis en train de me faire un panneau d'admin (bien que tout soit automatisé.......), je vais donc en profiter pour tester la POO sur les Membres. Je pense que c'est le plus facile, car c'est une utilisation ""basique"" de la POO, et donc il devrait y avoir pas mal d'exemples sur internet. :)

Mais je me dis qu'au final, je vais quand même avoir pas mal de requêtes pour chaque besoin.. est-ce que je vais gagner en confort d'utilisation ? Ou ce sera juste pour ma satisfaction/progression personnelle ? :p

Plus ton site grossira plus tu gagneras en confort, et l'avantage de ces classes c'est que tu pourras facilement les réutiliser sur d'autres projets ;)

Pas mal, je pense que tout a été dit plus haut ^^ Pour ma part une petite question de curiosité : D'où tires-tu tes données en ce qui concerne les ouvertures et tout ça ? Je m'y suis déjà intéressé et j'avais abandonné à cause du manque d'open data et ce genre de choses.

Bon boulot et merci, ça me sera utile! :)

Voxran
Auteur

Alors en effet à ma connaissance il n'y a pas d'open-data ou quoi que ce soit, ce qui est bien dommage...
Je tire mes données en pompant celles de la société Skiplan/Lumiplan, qui (je pense) fournis aux stations des outils pour gérer leurs domaines. Toutes les stations sont listées là : http://www.skiplan.com/stations-temps-reel/ (J'ai remarqué ça en parcourant les tableaux des ouvertures sur certaines stations, et j'ai fini par trouver d'où tout venait ^^)

Et donc vu que toutes les données sont "codées" à l'identique pour chaque station, j'ai un script un peu compliqué qui me choppe toutes les infos :
-> Toutes les stations enregistrées dans une table SQL, avec leur nom, leur "région" et leur pays (les infos des URLs des bulletins Skiplan),
-> Une boucle qui se répète autant de fois qu'il y a de stations et qui pour chacune appelle une fonction de récupération des météo et une fonction de récupération des pistes
-> Ces fonctions sont composées d'une regex qui parcoure chaque "bloc" d'une météo et chaque "ligne" du tableaux des pistes, et ces regex me retournent un tableau de données (genre nom de la piste, type de la piste, ouverture de la piste, etc etc etc...) que j'enregistre dans des tables SQL à nouveau.
-> Le tout dans un fichier avec un CRON dessus qui s’exécute aux heures que je veux ;)

Voici par exemple la fonction de récup' des pistes, en sachant que la table est vidée avant de lancer cette fonction (update impossible, les pistes changent tout le temps..) : http://pastebin.com/9rX6HsMc
Je serai incapable de l'améliorer sans m'y remettre activement dessus, elle tourne depuis plus d'un an sans jamais avoir eu de soucis, donc je n'y touche pas. :D

Si tu veux + d'explications ou des bouts de code que j'utilise, n'hésite pas ;)