Création d'un site Web dynamique - gestion d'articles
Fermé
sarahcorneille
Messages postés36Date d'inscriptionsamedi 15 février 2014StatutMembreDernière intervention16 mars 2014
-
15 févr. 2014 à 16:12
sarahcorneille
Messages postés36Date d'inscriptionsamedi 15 février 2014StatutMembreDernière intervention16 mars 2014
-
15 févr. 2014 à 16:14
Bonjour,
Parfois, j'ai un peu de mal à concevoir comment faire certaine chose en html et php. Par exemple, je voulais créer un site web dynamique contenant des articles. Cependant, le html est fractale, on revient toujours à des titres de niveau 1 en général. Donc, on a une structure comme celle-ci:
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="utf-8" />
<title>Site sur la formation Web</title>
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<section>
<header>
<h1>Site sur la formation Web</h1>
<nav>
<ul>
<li><a href="#">Accueil</a></li>
<li><a href="#">Cours</a></li>
</ul>
</nav>
</header>
<article>
<header>
<h1>Titre de l'article n°1</h1>
</header>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
<p>Quisque ac sem fermentum, fringilla nisl sed.</p>
<p>In sollicitudin, odio at laoreet imperdiet, quam tellus.</p>
</article>
<article>
<header>
<h1>Titre de l'article n°2</h1>
</header>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
<p>Quisque ac sem fermentum, fringilla nisl sed.</p>
<p>In sollicitudin, odio at laoreet imperdiet, quam tellus.</p>
</article>
<footer>
<p>Copyright - Tous les droits sont réservés à Sarah Corneille</p>
</footer>
</section>
</body>
</html>
Comment faire pour avoir un site web comme un document comme ci-dessous?
1. php
Le langage php permet de créer des sites web dynamiques qui sont reliés à une base de données. L'avantage du php est que les modifications réalisées dans la base de données se répercutent automatiquement sur le site web dynamique. Donc, vous avez beaucoup moins de modifications à réaliser au niveau du code. Contrairement au html où vous devez aller automatiquement dans le code du site web statique quand vous voulez faire une modification.
1.1. procédural
Quand vous apprenez un langage de programmation en général, vous commencez par un langage procédural.
1.1.1. site web dynamique: début
Quand vous créez un site web dynamique, vous commencez toujours par du html statique. Vous rendrez votre page dynamique par la suite.
1.1.2. site web dynamique: base de données
Quand vous créez un site web dynamique, vous devez toujours définir les paramètres de connexion à votre base de données.
1.1.3 site web dynamique: régions répétées
Les régions répétées permettent de moins coder. Supposons que votre site web contiennent 25 articles. En html statique, vous auriez dû créer manuellement les 25 articles avec du code html <article> ... </article>.
En php, vous allez utiliser du sql pour aller chercher les différents articles dans la base de données. Au final dans votre code php vous n'aurez qu'un article avec une région répétée. Le php demandera à la base de données les différents contenus des différents articles. Le php créera le html qui s'affichera dans votre navigateur.
1.2. objet
Le php objet introduit les notions de classes. L'année prochaine, nous verrons entre autre le modèle MVC (Modèle - Vue - Contrôleur).
Donc, je pensais créer une table récursive "articles" avec les champs suivants: id_article, titre_article, niveau_article, texte_article et image_article. Je pensais qu'un article pouvait contenir un autre article de niveau supérieur comme dans les styles dans un document Word. Par exemple, on aurait 1 article de niveau 1 qui contiendrait 3 articles de niveau 2 et ainsi de suite.
J'en ai parlé à mon professeur qui m'a directement dit non, un article ne peut pas contenir un article. On doit se débrouiller autrement en html. Par exemple, on peut utiliser des sections. Néanmoins, pour les sections, c'est pareil, on en revient toujours à des sections de niveau 1. De plus, on n'aura pas les titres de section dans notre base de données. Par contre, le champ niveau_article peut définir des spécifications css différentes dans le cas où certains articles devraient ressortir plus que d'autres.
Comment gère-t-on différent niveau d'article dans un site?
Je vais en profiter pour poser d'autres questions. Je sais que j'en demande beaucoup mais c'est en posant des questions que l'on progresse et nous sommes trop nombreux à notre formation web. Donc, il m'est impossible de poser plusieurs questions et puis il y a toujours le fait de paraître ridicule auprès des autres de la formation.
Dans le cas où un article peut contenir plusieurs images, est-ce que je dois créer un tables "images" dans ma base de données ou est-ce l'outil wysiwyg qui permet de gérer cela?
Je précise que je ne connais pas encore l'outil wysiwyg. J'ai demandé des informations à ce sujet dans un autre topic.
Pour ma part, je pense que l'analyse d'une base de données reste pour moi très difficile. Le professeur lui me dit, quand je vois votre base de données, je vois directement le site web. Je prends des heures à faire la structure d'une base de données où il y a des erreurs. Le professeur me dit qu'un professionnel ferait la même base de données en moins d'une heure. Ce qui ne me rassure pas du tout.
MERCI
A voir également:
Création d'un site Web dynamique - gestion d'articles