bonsoir !

je me suis récemment mis au xhtml/css et j'ai fait pas mal de recherche mais je n'ai pas trouvé de tutoriaux parlant de mélanger php et xhtml.
est-il possible de faire une interface graphique en xhtml/css sans s'occuper du php et apres coder les fonctions ? (et si oui comment faire correspondre les deux ??)

ou alors est-ce qu'il faut faire un truc du genre <?php echo 'mon code xhtml' ?> ??

j'avoue etre perdu...existe-t-il des tutoriaux ?

merci par avance ! Smiley smile
bonjour
merci pour vos réponses !

je me suis peut-etre mal exprimé mais en fait vous n'avez pas tout a fait répondu à ma question:

je connais le php et je sais gérer php/html
mais en fait généralement je fais des fonctions php gérérant du html comme par ex:
<?php
function header() {
  echo '<html>
            <head>
              <title>' . $titre . '</titre>
            </head>
            <body>';
}


mais ce que je voulais savoir c'est s'il existe une facon plus simple de faire intéragir xhtml et php genre avec des variables propres à xhtml de la meme facon qu'on utlise des variables globales en php (genre $_GET)...

parce qu'en fait je voudrais séparer les graphismes et les fonctions...

merci

ps: sinon faire son graphisme en xhtml et puis insérer des balises <?php ?> mais est-ce la seule solution ??


: j'avais oublié les includes !! Smiley confus Smiley edit Modifié par Babs (12 Sep 2005 - 18:19)
Salut,
attention, tu mélanges un peu tout :
$_GET, $_POST sont des variables php
<html>, <p>, <a> sont des balises (x)html
Le langage php est un langage de scripts, tandis que le (x)html un langage de balises. Les deux peuvent se compléter parfaitement, mais chacun remplissant son rôle...
Lorsque tu dis que tu veux "faire un graphisme xhtml", tu mélanges encore les choses : le graphisme d'une page, ou disons plutôt la mise en forme, est faite généralement par les feuilles de styles. Le xhtml lui sert à structurer ton document au moyen de ses balises.
Maintenant, tu peux parfaitement générer du code (x)html par php... pour l'exemple de fonction que tu donnes, cependant, je ne suis pas très convaincue de l'utilité de la chose. Je serais assez partisante de la séparation du html / php comme de la séparation html / css.
Je m'explique : ta fonction header là ne fait intervenir php que pour transmettre une variable nommée titre... pourquoi lui faire générer le html ? Voilà comment je procéderais :

<html>
<head>
<title><?php print $titre; ?></title>
</head>
...

Ce qui te permet de voir dans ton éditeur la structuration de ta page html, ce qui est beaucoup plus clair qu'un truc ressemblant à ça :

<?
header();
contenu();
piedpage();
?>
Justement à ce sujet (séparation PHP/XHTML) quelle est la meilleure solution ?

Quand on fait du web et exclusivement du web, on a tendance à retenir la solution :

<html>
<head>
<title><?php print $titre; ?></title>
</head>
...


En revanche quand on fait de la programmation orientée objet, la solution la plus classique est :


<?php
function header() {
echo '<html>
<head>
<title>' . $titre . '</titre>
</head>
<body>';
}
<?
header();
contenu();
piedpage();
?>


Ce qui permet de diviser le code xhtml en modules réutilisables. D'ailleurs dans la plupart des livres sur PHP comme par exemple Pratique de MySQL et PHP de Philippe Rigaux chez O'reilly, c'est la méthode qui est retenue.
Les classes et les fonctions sont utilisées pour la structure de la page, les tableaux, les formulaires... Evidemment ce n'est pas celle qui est retenue pour par exemple Dreamweaver et PHP (et pour cause !)

La 1° méthode me semble convenir à des templates simples mais pas tellement à des développements plus complexes.

Votre avis sur la question ?
Le mieux est de coupler les deux Smiley smile

Genre tu fait une fonction :
<?php

function render_user($user_name, $user_age) {
  require('user_template.php');
}

Puis dans ton user_template.php :
<div class="user">
  <span class="name"><?php echo $user_name ?></span>
  <span class="age"><?php echo $user_age ?></span>
</div>


Ca ressemble à une "template view", sans utiliser de système de template à part (comme Smarty). Tu peux ainsi changer facilement le code HTML généré en ne modifiant que user_template.php. Après, dans le reste de ton appli, tu pourra appeler la fonction render_user.