Page de tutoriel en php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Page de tutoriel en php

par Sékiltoyai » 27 févr. 2008, 11:52

Ainsi soit-il :)

Au passage, la phase de codage représente environ 20% du développement, et n'arrive pas avant plusieurs mois dans des projets moyens.

par Cyrano » 27 févr. 2008, 08:44

:shock: Soit dit sans méchanceté aucune : j'espère que ce ne sont pas des tutos sur le PHP ?

Et sinon, peut-être ne te poses-tu pas les bonnes questions. Sur un plan global, comment vois-tu la chose ?
sans méchanceté mais tellement inquiètant :mrgreen:
Même pas. Quelqu'un qui veut publier des tutos mais qui a des difficultés avec la méthodologie, ça incite à la prudence avant de fournir des réponses, d'où la question "comment vois-tu la chose" qui est destinée à pousser l'interlocuteur à exprimer avec des mots le cheminement qu'il visualise à ce moment là, si cheminement il y a bien entendu et ce n'est pas forcément le cas.

Dans n'importe quel projet, il est important de ne jamais oublier que la partie la plus importante est la phase d'analyse préliminaire qui consiste à définir le besoin exact. On ne se lance pas dans le codage tête baissée sans réfléchir, sinon, on a toutes les chances d'aboutir la tête dans le mur ;)

par dogmongo » 27 févr. 2008, 02:48

:shock: Soit dit sans méchanceté aucune : j'espère que ce ne sont pas des tutos sur le PHP ?

Et sinon, peut-être ne te poses-tu pas les bonnes questions. Sur un plan global, comment vois-tu la chose ?
sans méchanceté mais tellement inquiètant :mrgreen:

par djtec » 25 févr. 2008, 20:04

je ne comprend pas ce que tu me dis

par Cyrano » 25 févr. 2008, 19:39

Encore une fois : tu lis en diagonale et tu ne réfléchis pas en terme de données brutes : tu es déjà dans les pages web. Ce que tu décris n'est en rien incompatible avec le modèle de données que je te suggère. Prends un peu de temps pour y réfléchir, c'est de la logique élémentaire là :-k

par djtec » 25 févr. 2008, 19:35

J'ai une page qui s'apel tutoriaux.php sur cette page il y a la liste de tout les tutoriaux.

Ensuite par exemple je choisi un tuto sur les espace membre je clique dessus et la je tombe sur une page qui s'apel tutoriaux-cat.php et la il y a les differentes catégorie du tuto

Exemple:
cat 1
- la base
- connection
etc...

cat 2
- module whoisline
- module messagerie
etc...

et en cliquant sur "la base" je tombe sur la page qui explique la bdd dont aura besion le script.
Idem pour les autres liens.

par Cyrano » 25 févr. 2008, 19:24

J'ai peur qu'on emploie pas le même vocabulaire, donc je vais illustrer par un exemple.

Supposons que je veuille créer des tutos pour enseigner la cuisine. Je vais classer mes tutos en catégories, j'aurai "Les entrées", "Les viandes", "Les poissons", "Le gibier", "Les légumes", "Les desserts".

Supposons maintenant que je crée une recette de "Daube de sanglier aux poivrons" (Je sais pas si ça existe, mais ça inspirera peut-être quelqu'un ;)) : je vais répartir ce tuto sur trois pages. Sur la première, je mets la liste des ingrédients et les préparatifs à exécuter. Sur la seconde, je trouve la recette proprement dite. Et une troisième page avec "Les vins pour accompagner ce plat" décrivant les millésimes, les températures pour servir, etc....

On a donc effectivement trois entités : "categorie", "tuto" et ""page" : une catégorie comprendra 0 à n tutos, un tuto comprendra 1 à n page(s).

Partant de là, je comprends mal l'idée de répartir les pages en catégories... à moins de vouloir apporter un autre élément : trouver directement par exemple "Quels vins avec quoi" où je retrouverais la troisième page de mon tuto de recette de sanglier et toutes les pages similaires des tous les autres tutos :?: Au départ, les pages sont en catégories par filiation avec les tutos que je répartis déjà en catégorie.

par djtec » 25 févr. 2008, 15:15

J'ai mit catégorie car les pages peuvent rangées sous formes de catégorie.

Exemple:

Code : Tout sélectionner

- cat 1 --- page 1 --- page 2 --- page 3 - cat 2 --- page 1 --- page 2 --- page 3 etc...
Voilà pourquoi une table catégorie


C'est ça que tu voulais que je fasse.

Image

par Cyrano » 25 févr. 2008, 14:55

Pourquoi une catégorie sur les pages ? C'est le tuto qui entre dans une catégorie alors que la page se rattache à un tuto directement. Tu ne crois pas ?

Ne penses pas en terme de tables et de colonnes pour l'instant : tu tries et catégories des données sous forme de regroupement d'entités et de propriétés de ces entités.

Tuto est une entité, page aussi, alors que titre par exemple sera une propriété de tuto. Ensuite, établis les relations : Une donnée de l'entité X est liée à 0:1 (ou bien 1:1, 0:n ou 1:n) donnée(s) de l'entité Y. Dans l'exemple que j'ai montré précédement, une page est liée à 1:1 tuto (un et un seul) tandis qu'un tuto comporte 1:n pages (1 à n pages). C'est ce qu'on appelle les cardinalités. Définis ces cardinalités et ensuite reviens avec ton modèle, ce sera plus efficace pour avancer :)

par djtec » 25 févr. 2008, 14:45

Donc je dois faire une BDD comme ceci:

Code : Tout sélectionner

Table tuto - id_tuto - titre - page (yes or no) - texte - date - view Table cat_page - id_cat - id_tuto - titre - view - date Table page - id - id_cat - id_tuto - ss_titre - texte
C'est ce genre de table que je dois créer?

par Cyrano » 25 févr. 2008, 07:19

Je dirais ceci : avant de penser au codage en PHP, pense en terme de données. Il te faut d'abord établir le modèle de données pour concevoir la base avec par exemple la méthode MERISE. On peut dans un premier temps distinguer deux entités : "tutos" et "pages" où 1 tuto comporte 1:n pages et 1 page correspond à 1:1 tuto.

Ça donne quelque chose comme ceci :

Code : Tout sélectionner

+----------------+ +------------------+ | tutos | __________ | pages | +-----------+----+ 1:n / comporte \ 1:1 +-------------+----+ | tut_id | PK |-----|----------|-----| pag_id | PK | | tut_titre | | \__________/ | tut_id | FK | | tut_date | | | pag_sstitre | | +-----------+----+ | pag_texte | | +-------------+----+
Planche un peu là dessus et va faire un tour sur les tutos de developpez.com, il y a un tuto sur MERISE dans la rubrique SGBD très intéressant :)

par djtec » 25 févr. 2008, 00:57

Cyrano

La méthode que tu me propose me parait la mieux mais ce que je vois pas c'est le genre de table qu'il faudrait et aussi le script php nécessaire pour l'utiliser.

Mais le truc c'est que si je crée une page avec des subdivision il faut aussi que cette page me serve pour des tutoriels normaux qui n'aurez pas de sous-rubrique.

Merci d'avance.

par Hywan » 24 févr. 2008, 23:32

Ou un commentaire, ce serait plus propre :

Code : Tout sélectionner

<h3>Un titre de profondeur 3</h3> <p>Bla bla bla bla bla</p> <!-- --newpage-- --> <h1>Nouveau chapitre</h1>
Les possibilités sont vastes :).
Le plus efficace serait d'avoir un document, que tu éclates, et que tu enregistres pour ne pas à avoir à l'éclater à chaque fois. Ce serait une règle d'or.

par h0_noMan » 24 févr. 2008, 23:30

Dans ton cas, je stockerais sois en fichiers, sois en BDD.

Pour separer les pages tu peux utiliser une expression specifique à ton application (ex: <NEWPAGE/>) pour separer ton tuto en plusieurs pages.

Au moment de la recuperation des données, tu compteras combien il y a de <NEWPAGE/> et tu sauras ainsi combien de page il y a et avec les REGEXP (ou toute autre méthode) tu pourras recupérer les données pour une page precise.

par Hywan » 24 févr. 2008, 21:59

Si tu es à l'aise avec XML et XSLT, tu peux toujours utiliser DocBook, mais il ne faut pas avoir froid aux yeux pour avoir un résultat vraiment appréciable.
Je ne connais pas ton niveau, c'est pour ça que je précise : si et seulement si tu es à l'aise, j'entends par là : un bon niveau dans ce domaine :).
Avec DocBook, tu as un ou plusieurs fichiers XML, et lors de l'application successives des feuilles XSLT, il applique les feuilles chunk, c'est à dire qu'il va te créer des fichiers pour chaque chapitre, section etc. C'est plutôt configurable à ce niveau. Je te laisse explorer les possibilités de DocBook, mais reste à ton entière disposition si tu as des questions.

Sinon, écoute mes collèges, ils ont de bonnes idées ;-).