News
Challenges
Crackme
ClientSide
Cryptographie
Forensics
Hacking
Logique
Programmation
Stéganographie
Wargame
Tous les challenges
Forum
Tutoriaux
FAQ
Liens utiles
IRC
Newbie Connect
Liens
Partenaires
Réglement
Goodies
L'incubateur
A propos
L'équipe
Hall Of Fame
NewbieContest
Programmation
»
Langages Web
»
[Général] Secrets de fabrication
Username:
1 heure
1 jour
1 semaine
1 mois
Toujours
Password:
Accueil
Aide
Rechercher
Recherche rapide
Recherche avancée
[Fermer]
Identifiez-vous
Inscrivez-vous
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
Messages: 59
[Général] Secrets de fabrication
«
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
Messages: 3098
poulping for fun & profit
Re : Secrets de fabrication
«
#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
Messages: 1520
Re : Secrets de fabrication
«
#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
Messages: 1260
Re : Re : Secrets de fabrication
«
#3 le:
11 Février 2008 à 18:34:23 »
Citation de: the lsd le 11 Février 2008 à 09:46:51
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
Messages: 39
Re : Re : Secrets de fabrication
«
#4 le:
11 Février 2008 à 21:23:50 »
Citation de: Folcan le 11 Février 2008 à 10:19:56
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
Messages: 3098
poulping for fun & profit
Re : Secrets de fabrication
«
#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
Messages: 39
Re : Secrets de fabrication
«
#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
Messages: 1520
Re : Re : Re : Secrets de fabrication
«
#7 le:
12 Février 2008 à 10:39:24 »
Citation de: BiDOrD le 11 Février 2008 à 21:23:50
Citation de: Folcan le 11 Février 2008 à 10:19:56
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
Messages: 3098
poulping for fun & profit
Re : Re : Re : Re : Secrets de fabrication
«
#8 le:
12 Février 2008 à 14:34:40 »
Citation de: Folcan le 12 Février 2008 à 10:39:24
une faute d'**orthographe !**
Moi je trouve ca assez rigolo comme faute ^^
Citation de: Folcan le 12 Février 2008 à 10:39:24
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
Messages: 1520
Re : Re : Re : Re : Re : Secrets de fabrication
«
#9 le:
12 Février 2008 à 15:11:02 »
Citation de: the lsd le 12 Février 2008 à 14:34:40
Citation de: Folcan le 12 Février 2008 à 10:39:24
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 ^^
Citation de: the lsd le 12 Février 2008 à 14:34:40
Citation de: Folcan le 12 Février 2008 à 10:39:24
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
Messages: 811
Re : Re : Re : Re : Re : Re : Secrets de fabrication
«
#10 le:
12 Février 2008 à 16:07:27 »
Citation de: Folcan le 12 Février 2008 à 15:11:02
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
Messages: 559
Re : Re : Re : Re : Re : Re : Secrets de fabrication
«
#11 le:
12 Février 2008 à 18:38:18 »
Citation de: Folcan le 12 Février 2008 à 15:11:02
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
How to...
BiDOrD
Profil challenge
Classement : 73/55020
Néophyte
Hors ligne
Messages: 39
Re : Secrets de fabrication
«
#12 le:
12 Février 2008 à 18:45:02 »
Citation de: Folcan le 12 Février 2008 à 10:39:24
Citation de: BiDOrD le 11 Février 2008 à 21:23:50
Citation de: Folcan le 11 Février 2008 à 10:19:56
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
Messages: 59
Re : Secrets de fabrication
«
#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 à:
Merci de choisir une destination:
-----------------------------
Général
-----------------------------
=> Proposition de tutoriaux
=> Général
=> Suggestions/Dev. du site
=> Projet en Cours
=> Defouloir
=> Sondage pour le site
=> Bugs
-----------------------------
News
-----------------------------
=> News du site
=> News Hacking/Cracking/Phreaking
=> News Informatique/Hardware/Tuning
-----------------------------
Challenges
-----------------------------
=> Aide Crackme
=> Aide Cryptographie
=> Aide Forensics
=> Aide Hacking
=> Aide Javascript/Java/HTML
=> Aide Logique
=> Aide Programmation
=> Aide Stéganographie
=> Aide Wargame
-----------------------------
Afterwards
-----------------------------
=> Afterwards Crackme
=> Afterwards Cryptographie
=> Afterwards Forensics
=> Afterwards Hacking
=> Afterwards Javascript/Java/HTML
=> Afterwards Logique
=> Afterwards Programmation
=> Afterwards Stéganographie
=> Afterwards Wargame
-----------------------------
Divers
-----------------------------
=> Linux
=> Hacking
=> Cracking
=> Hardware
=> Informatique
-----------------------------
Programmation
-----------------------------
=> Langages compilés
=> Autres langages
=> Langages Web
Chargement...