Creation d'une page web dynamique

Fermé
mikasa - 7 déc. 2016 à 15:55
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 8 déc. 2016 à 11:30
Bonjour,

svp , je suis entrain de creer un site web avec html css et php je sais pas comment expliquer mon probleme
voila je souhaite pouvoir ajouter des pages dans mon site dynamiquement ,
j'ai cree un formulaire dans la partie admin de mon site pour ajouter des donnees dans la bdd ,
et depuit bdd je veux inséré dans une nouvelle page html
mais je sais pas comment creer une nouvelle page html depuis php



A voir également:

2 réponses

nagaD.scar Messages postés 4272 Date d'inscription samedi 8 septembre 2007 Statut Membre Dernière intervention 4 janvier 2023 252
Modifié par nagaD.scar le 7/12/2016 à 17:05
Salut,

En php tu ne créer pas de page html au sens strict, tu génères un flux html temporaire.

Ce qui veut donc dire que lorsqu un client va appeler un page php, il ne va pas récupérer le contenu du fichier .php mais le flux html généré par cde ce fichier (flux qui sera donc renvoyer au client).

Un exemple pour faire simple:

<?php
   if(isset($_GET['val'])){ 
      switch($_GET){
          case '1' : echo 'page 1';break;
          case '2' : echo 'page 2';break;
          default : echo 'page autre';break;

      }

   } else {
      echo 'Pas de données GET';
   }
?>



Comme tu le vois, tu as donc côté serveur un code qui va générer du contenu en fonction d une variable (ici ca dépendra du get).

Là ca va juste afficher un message mais tu peux afficher tout ce que tu souhaite ... mais à mon avis tu as tout d abord des lacunes à combler.

naga
0
mikasa78 Messages postés 3 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 9 décembre 2016
7 déc. 2016 à 18:56
merci pour votre réponse est ce que vous avez un tutoriel a me conseiller ??
0
nagaD.scar Messages postés 4272 Date d'inscription samedi 8 septembre 2007 Statut Membre Dernière intervention 4 janvier 2023 252
8 déc. 2016 à 09:00
tu peux chercher sur le siteduzero, leurs tuto sont assez bien fait en général
0
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
8 déc. 2016 à 10:12
Bonjour,

Il est tout-à-fait possible de créer des pages HTML en php. Cela comporte quelques avantages, notamment celui de soulager le serveur qui n'aura besoin de générer la page en question qu'une seule fois, à sa création.
L'inconvénient est évidemment que la page sera statique, encore que cela puisse se corriger par du javascript et des appels Ajax (mais au détriment de l'avantage précité).

Pour créer des pages HTML, il suffit de faire comme pour une page web standard, mais en redirigeant toute la sortie dans une variable. Un bon moyen est d'utiliser le output buffering pour capturer la sortie normale (les echo et autre) et les rediriger dans une variable que l'on écrira ensuite dans un fichier.

Exemple :
<?php
echo "Ce texte va s'afficher<br />";
ob_start();
echo "Ce texte ne s'affichera pas, il sera mis en tampon puis écrit dans un fichier";
$contenu = ob_get_contents();
ob_end_clean();
echo "Fin de la mise en tampon<br />";

file_put_contents('fichier.html', $contenu);

echo "Fin de l'écriture de fichier.html<br /><br />";

echo "Affichage du contenu de fichier.html :<br />";
include('fichier.html');


La doc :
https://www.php.net/manual/en/function.ob-start.php
https://www.php.net/manual/en/function.ob-get-contents.php
https://www.php.net/manual/en/function.ob-end-clean.php
https://www.php.net/manual/en/function.file-put-contents.php

Xavier
0
nagaD.scar Messages postés 4272 Date d'inscription samedi 8 septembre 2007 Statut Membre Dernière intervention 4 janvier 2023 252
8 déc. 2016 à 10:54
Je ne connaissais pas les fonctions ob qui ont un interet dans certains contexte je te l accorde ^^

Par contre, tu me dira que je joue sur les mots, mais en mon sens le rôle ici n est pas de générer de réels contenu (dit différemment, un site web) mais de permettre, comme tu l as dis, d avoir un tampon pour soulager le serveur (sachant que dans tous les cas il y aura un appel php pour renvoyer le flux - updaté ou non, c'est a gerer) . Mais dans ce cas il faut gérer tout la maj pour ne pas envoyer de contenu obsolète, et au final on a juste une surcouche semi-dynamique qui s intercale entre le contenu (et serveur) php et le flux retourné au client, ce qui rend la gestion plus lourde qu au départ et pas, je pense, intéressante pour un débutant. (et ici vu la question, je penses qu il lui manque des notions php basiques, étant donné qu il ne semble pas encore à même de comprendre qu'un fichier php peu être N pages généré).

Bon aussi je préfère gérer mes tampon par du write direct mais c'est perso.

Mais je vais tester, ca m interesse ^^
0
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
8 déc. 2016 à 11:30
Ça dépend des usages. Par exemple, certains CMS/plateformes de blog fonctionnent maintenant comme ça : les messages sont enregistrés directement sous forme HTML et n'ont pas besoin d'être tirés d'une base de données.

Effectivement c'est d'autant plus efficace que le contenu ne change peu. Un choix à faire entre performances et fonctionnalité, comme souvent...
0