logo Homepage
+  NewbieContest
|-+  Programmation» Langages Web» [Général] Secrets de fabrication
Username:
Password:
Pages: [1]
  Imprimer  
Auteur Fil de discussion: [Général] Secrets de fabrication  (Lu 10684 fois)
eldergob

Profil challenge

Classement : 616/55020

Membre Junior
**
Hors ligne Hors ligne
Messages: 59


Voir le profil WWW
« le: 11 Février 2008 à 09:07:56 »

Bonjour,

Je poste ici mais je ne suis pas sur que ce soit le bon endroit (déplacer le sujet si c'est nécessaire).

Je m'étais mis à programmer un challenge sur mon site en m'inspirant de NC. Mon site (voir mon profil) est fait avec PHP-Nuke et je lui rajoutais donc un module Challenge (donc j'utilise PHP + MySQL).

Suite à des problèmes avec mon site - perte de la sauvegarde du site au moment d'une mise-à-jour (qui a dit boulet   ?) - j'avais un peu arrêtais ce développement. Je suis en train de m'y remettre.

Mais je bute toujours sur le même problème: l'organisation des données. Donc j'aurai quelques questions.

- Comment sont stockées les descriptions des épreuves dans NC? Moi j'ai opté pour coder directement dans un fichier PHP avec un "switch" mais je suis pas persuader que ce soit le mieux (sauf que ça m'évite de coder la partie admin du module pour pouvoir stocker les descriptions des épreuves dans la BDD).

- Comment sont enregistrés les épreuves résolues? Moi, j'ai une table dans ma BDD avec un champ par épreuve. Ce qui m'oblige à rajouter un champ chaque fois que je rajoute une épreuve.

J'aimerai donc savoir quels choix ont été fait pour NC et si on peut avoir une idée de la manière dont les données sont organisées. Bref, j'aimerai connaître les secrets de fabrication de NC.

Merci.
« Dernière édition: 14 Novembre 2009 à 01:21:33 par the lsd » Journalisée

Hardware: MyBrain 70 beta
Software: MyMind OS rc5
the lsd
Administrateur

Profil challenge

Classement : 183/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 3098

poulping for fun & profit


Voir le profil WWW
« #1 le: 11 Février 2008 à 09:46:51 »

Je déplace dans la partie prog web, qui me parait plus appropriée.

Concernant tes questions, je doute que les admins de NC acceptent de livrer la strcture de la BDD.

Par contre, avec un peu de réflexion, tu peux déduire comment sont faites les tables.
Perso, je pencherais pour un truc du genre une table membre qui contient
pseudo pass mail toussa toussa
et une deuxieme table contenant une clé étrangère (pseudo par exemple) avec les épreuves résolues ou non.

Pour les description, je ne pense pas que ce soit de cette manière, mais perso j'aurai fait par fichier

Enjoy

The lsd
Journalisée

Newbie Contest Staff :
The lsd - Th3_l5D (IRC)
Statut :
Administrateur
Citation :
Cartésien désabusé : je pense, donc je suis, mais je m'en fous !
Folcan

Profil challenge

Classement : 511/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1520


Voir le profil
« #2 le: 11 Février 2008 à 10:19:56 »

Citation
- Comment sont stockées les descriptions des épreuves dans NC? Moi j'ai opté pour coder directement dans un fichier PHP avec un "switch" mais je suis pas persuader que ce soit le mieux (sauf que ça m'évite de coder la partie admin du module pour pouvoir stocker les descriptions des épreuves dans la BDD).

Quelle drole d'idée !!
Depuis quand on stocke des données dans une page PHP ??
Une page PHP ne doit contenir que du code ! (question de propreté).

Si jamais tu souhaite rajouter une épreuve, ou modifier le titre ou la description, tu dois donc aller downloader la page, la modifier, la réuploadé ? Pas très propre tout ca. Les bases de données spa fait pour faire jolie !
Journalisée

-=[FoLc@N]=-

Citation :
* Le futur appartient à ceux qui croient à la beauté de leurs rêves, je crois au miens, NewbieContest aura un bon futur.
* Il y'a seulement 10 categories de gens dans la vie : ceux qui comprennent le binaire, et les autres.
S0410N3
Administrateur

Profil challenge

Classement : 10/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1260


Voir le profil WWW
« #3 le: 11 Février 2008 à 18:34:23 »

Concernant tes questions, je doute que les admins de NC acceptent de livrer la strcture de la BDD.

Effectivement 

Bon, sinon, il n'y a pas de structure ni d'approche parfaite. Ca dépend de ce qu'on veut en faire.
Un peu de modélisation merisienne peut aider pour jeter la structure. Reste ensuite à optimiser et trouver des feintes pour ne pas non plus avoir à se fader des requêtes de gros malade pénibles à écrire et couteuses en utilisation cpu.
Merise c'est bien pour conceptualiser mais dans la réalité ça ne fait pas de mal de s'en éloigner un peu...
Journalisée

Enjoy (copyleft de quelqu'un qui a trop parlé)

S0410N3

-------------------------------------------------------------------------------------
La folie est le prix à payer pour le temps passé à être trop lucide.
-------------------------------------------------------------------------------------
http://forum.hardware.fr/hfr/Discussions/Societe/francais-repere-repaire-sujet_19265_1.htm
BiDOrD

Profil challenge

Classement : 73/55020

Néophyte
*
Hors ligne Hors ligne
Messages: 39


Voir le profil
« #4 le: 11 Février 2008 à 21:23:50 »

Depuis quand on stocke des données dans une page PHP ??
Une page PHP ne doit contenir que du code !
Et où tu stockes les axx de connexion à la BDD ?
Journalisée
the lsd
Administrateur

Profil challenge

Classement : 183/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 3098

poulping for fun & profit


Voir le profil WWW
« #5 le: 11 Février 2008 à 23:57:21 »

dans un fichier php a part !

Enjoy

The lsd
Journalisée

Newbie Contest Staff :
The lsd - Th3_l5D (IRC)
Statut :
Administrateur
Citation :
Cartésien désabusé : je pense, donc je suis, mais je m'en fous !
BiDOrD

Profil challenge

Classement : 73/55020

Néophyte
*
Hors ligne Hors ligne
Messages: 39


Voir le profil
« #6 le: 11 Février 2008 à 23:58:57 »

Donc dans une page php !

Edit : Page != fichier, effectivement, avais pas réfléchi. donc j'ai rien dit...
« Dernière édition: 12 Février 2008 à 00:01:37 par BiDOrD » Journalisée
Folcan

Profil challenge

Classement : 511/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1520


Voir le profil
« #7 le: 12 Février 2008 à 10:39:24 »

Depuis quand on stocke des données dans une page PHP ??
Une page PHP ne doit contenir que du code !
Et où tu stockes les axx de connexion à la BDD ?

Tu parlais des données variables (description, titre) et non des accès à la base il me semble.

Tout ce qui est ammené à être modifier doit etre dans une base de donnée.
Les description en font donc partie, imagine une faute d'**orthographe !**, une modification d'épreuve, suppression, ajout, il vaut mieux toucher à la base plutot que se perdre dans le code source, pour peux que un oublie un ";" qelque part et hop ca te genere une erreur pour que dalle.

C'est sur qu'une modelisation merisienne aide vraiment pas mal pour concrétiser un projet de site web bien ordonné.
« Dernière édition: 12 Février 2008 à 10:42:47 par Folcan » Journalisée

-=[FoLc@N]=-

Citation :
* Le futur appartient à ceux qui croient à la beauté de leurs rêves, je crois au miens, NewbieContest aura un bon futur.
* Il y'a seulement 10 categories de gens dans la vie : ceux qui comprennent le binaire, et les autres.
the lsd
Administrateur

Profil challenge

Classement : 183/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 3098

poulping for fun & profit


Voir le profil WWW
« #8 le: 12 Février 2008 à 14:34:40 »

une faute d'**orthographe !**

Moi je trouve ca assez rigolo comme faute ^^

Tout ce qui est ammené à être modifier doit etre dans une base de donnée.

Ou alors des fichiers !!! ca evites les injection SQL quand meme !

Enjoy

The lsd
Journalisée

Newbie Contest Staff :
The lsd - Th3_l5D (IRC)
Statut :
Administrateur
Citation :
Cartésien désabusé : je pense, donc je suis, mais je m'en fous !
Folcan

Profil challenge

Classement : 511/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 1520


Voir le profil
« #9 le: 12 Février 2008 à 15:11:02 »

une faute d'**orthographe !**

Moi je trouve ca assez rigolo comme faute ^^

Haaa même pas vu à la relecture ! M'enfin, ca passe quand meme ^^

Tout ce qui est ammené à être modifier doit etre dans une base de donnée.

Ou alors des fichiers !!! ca evites les injection SQL quand meme !

Enjoy

The lsd

Oui mais enfaite...non !
Des variables, c'est fait pour varier, qui dit varier, dit écriture, qui dit écriture dans un fichier, dit chmod 777, donc bouhpasbiencpassecure !
Et puis, un accès à une base de donnée est plus rapide et plus souple que la lecture d'un fichier.
Dans un fichier, soit tu as seulement les description, et le titre dans un fichier à part, soit tu es obligé de faire du parsing de porc pour t'en sortir.

Encore une fois, on a pas inventé les bases de données pour rien.
Journalisée

-=[FoLc@N]=-

Citation :
* Le futur appartient à ceux qui croient à la beauté de leurs rêves, je crois au miens, NewbieContest aura un bon futur.
* Il y'a seulement 10 categories de gens dans la vie : ceux qui comprennent le binaire, et les autres.
zours

Profil challenge

Classement : 555/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 811


Voir le profil
« #10 le: 12 Février 2008 à 16:07:27 »

Des variables, c'est fait pour varier, qui dit varier, dit écriture, qui dit écriture dans un fichier, dit chmod 777, donc bouhpasbiencpassecure !
Ah ? J'aurais plutôt pensé qu'il suffisait de donner les fichiers à www-data (ou l'utilisateur équivalent qui lance apache, surtout pas root), compte avec pas vraiment beaucoup de privilèges... Ceci dit si tu chmodes 777 dès que t'as un problème de permissions, je veux bien te croire quand tu dis que c'est pas secure.
Journalisée
Zmx

Profil challenge

Classement : 75/55020

Membre Héroïque
*****
Hors ligne Hors ligne
Messages: 559


Voir le profil WWW
« #11 le: 12 Février 2008 à 18:38:18 »

Encore une fois, on a pas inventé les bases de données pour rien.
Encore une fois, on a pas inventé les bases de données le XML pour rien.
Journalisée

BiDOrD

Profil challenge

Classement : 73/55020

Néophyte
*
Hors ligne Hors ligne
Messages: 39


Voir le profil
« #12 le: 12 Février 2008 à 18:45:02 »

Depuis quand on stocke des données dans une page PHP ??
Une page PHP ne doit contenir que du code !
Et où tu stockes les axx de connexion à la BDD ?

Tu parlais des données variables (description, titre) et non des accès à la base il me semble.
Euh, pas compris pourquoi tu me dit "tu parlais", vu que j'avais encore rien dit avant le post que tu as cité.
Mais sinon, c'était juste une boutade sur le fait que les axx de la BDD (qui sont bien une forme de données !), on est bien obligés de les stocker dans un fichier php. (Enfin c'est vrai, on peut faire autrement, mais c'est une solution courament employée quand même...)
Journalisée
eldergob

Profil challenge

Classement : 616/55020

Membre Junior
**
Hors ligne Hors ligne
Messages: 59


Voir le profil WWW
« #13 le: 14 Février 2008 à 11:06:05 »

Merci pour toutes vos réactions.

Je viens de relire le code de mon embryon de challenge. J'ai tellement mis de données dans mes fichiers PHP que je peux quasiment me passer de BDD . C'est d'ailleurs ce que je fais faire provisoirement (je sais, c'est moche). Comme ça, je vais pouvoir réfléchir tranquillement à la structure de mes tables.
Journalisée

Hardware: MyBrain 70 beta
Software: MyMind OS rc5
Pages: [1]
  Imprimer  
 
Aller à: