IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Mélange code php html


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    617
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 617
    Par défaut Mélange code php html
    Bonjour,
    J'aime bien séparer au max les différents codes d'un site.
    Une façon de faire que j'utilisais il y a longtemps consistait à lire un fichier html dans un fichier php, de remplacer les données obtenues en php dans le fichier html et de faire un print du tout. Du style :
    html
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <html>
    	<head> 
    		<taratata....taratata>
    	</head>
    	<body>  		
    		<div>
    			<form action="unfichier.php" method="post">
    				%produit% 
    			</form>
    		</div>
    	</body>
    </html>
    et le php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    $html = file_get_contents("unfichier.html");
    $produits = mon code pour trouver mes produits;
    $html = str_replace("%produit%", $produits, $html);
    print($html);
    ?>
    Est-ce que c'est une bonne pratique ou carrément lourdingue ?
    Tout ce que je vois dans les tutos ou forums mélange le php et le html dans le même fichier.
    J'aimerais bien votre avis.
    Bien à vous
    Pierre-François

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 666
    Par défaut
    pour la théorie qui consiste à séparer les données et la présentation, je trouve que c'est indispensable de faire cela dès que le projet est complexe. et pour moi un projet complexe c'est un projet où tout le code ne tient pas sur le même écran.

    ensuite pour la pratique, il y a plusieurs façons de faire et beaucoup de personnes utilisent des moteurs de template comme vous le faites. de mon côté je trouve que php a déjà une syntaxe très intéressante qui permet de mettre du code php au milieu du code html donc j'utilise ce système pour organiser mes fichiers.
    j'ai donc, par exemple, un script qui prépare les données
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // lecture des données dans la base de données
     
    // calculs des données à afficher
     
    // construction du tableau des données qui seront passées au template
     
    $d = [
    	"code_template" => "formulaire/unfichier",
    	"titre_produit" => "Clé taille 25",
    ];

    et ensuite mes fichiers template ressemblent à ça, ce qui est très proche de ce que vous faites :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    		<div class="titre_produit">
    			<?= htmlspecialchars($d["titre_produit"])?>
    		</div>
    		<div>
    			<form action="unfichier.php" method="post">
    				<?= template($d["code_template"])?>
    			</form>
    		</div>

  3. #3
    Membre émérite Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    617
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 617
    Par défaut
    Là, on a le php et l'html dans le même fichier....

  4. #4
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 666
    Par défaut
    et donc ?
    mon message apporte-t-il des réponses à vos interrogations ?

  5. #5
    Membre émérite Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    617
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 617
    Par défaut
    Oui et non. Le fond de ma question était de savoir s'il coûtait cher en ressources d'ouvrir un fichier, le stocker dans une variable et le rebalancer dans un print.
    A part cela, votre approche me plaît.

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo