18041 sujets
Questions générales et questions de débutants
Bonjour Iscambe....la réponse est facile...tu ne peux pas !
PAr contre tu peux faire l'inverse , c'est a dire inclure des pages HTML dans une page php.
Ce qu'il est important de comprendre c'est que pour que les instructions PHP soient prises en compte ( comme ton "include" ou "require" ), il faut "dire" au serveur que ton fichier est suceptible de contenir des instructions en PHP et pour cela pas 50 manières : il faut le renommer en .php. Dans ton cas, index.php et tout devrais marcher !
Modifié par RoseGrenouille (27 Mar 2007 - 16:29)
PAr contre tu peux faire l'inverse , c'est a dire inclure des pages HTML dans une page php.
Ce qu'il est important de comprendre c'est que pour que les instructions PHP soient prises en compte ( comme ton "include" ou "require" ), il faut "dire" au serveur que ton fichier est suceptible de contenir des instructions en PHP et pour cela pas 50 manières : il faut le renommer en .php. Dans ton cas, index.php et tout devrais marcher !
Modifié par RoseGrenouille (27 Mar 2007 - 16:29)
Bon j'avais un super message à faire parce que je croyais que c'était ok mais en fait ça marche pas comme je voudrais.
L'include ne fonctionne pas.
Voici mon code :
Où dois-je précisément le mettre pour ne pas avoir à répéter mes menus dans chaque page...?
Merci pour ton aide !
Iscambe
Modifié par Iscambe (27 Mar 2007 - 22:24)
L'include ne fonctionne pas.
Voici mon code :
<div class="ZONE">
<?php
include('index.php'); // Nous appelons notre menu
?>
</div>
Où dois-je précisément le mettre pour ne pas avoir à répéter mes menus dans chaque page...?
Merci pour ton aide !
Iscambe
Modifié par Iscambe (27 Mar 2007 - 22:24)
Iscambe a écrit :
Où dois-je précisément le mettre pour ne pas avoir à répéter mes menus dans chaque page...?
Tu as deux solutions :
1 - Tu crées un site HTML statique « classique », sauf que tu donnes à chacune de tes pages HTML une extension en .php, et à la place de l'endroit où tu mettrais le code du menu tu mets une fonction pour inclure un fichier contenant le code du menu.
2 - Tu crées un site dynamique, avec une page index.php qui contient l'« interface » de ton site (les parties, en HTML, qui ne varient pas d'une page à l'autre, dont le menu par exemple). Et au lieu du code HTML du contenu de la page, tu as une fonction PHP qui va inclure tel ou tel fichier (je crois d'ailleurs que c'est la solution décrite dans le tutoriel « Inclure un fichier dans un autre, grâce à CSS et PHP ». C'est par contre un tout petit peu plus compliqué.
Enfin, il y a aussi la solution système de gestion de contenu (CMS), qu'il peut être intéressant d'explorer.
Au passage : pour conserver une bonne lisibilité des messages sur le forum, il est demandé d'utiliser les les balises code pour présenter le code source des exemples.
Pourrais-tu éditer ton message pour te conformer à cette règle de mise en forme ?
Merci d'avance.
Pourrais-tu éditer ton message pour te conformer à cette règle de mise en forme ?
Merci d'avance.
Oui c'est grace à ce tutoriel que j'ai déjà avancé...
J'ai des "boutons" qui sont des images et qui "appellent" les pages que je veux afficher. Mon problème étant que je veux dire où les afficher et c'est là que je bloque...
J'arrive pas à mieux expliquer
Encore envie de m'aider ???
Modifié par Iscambe (27 Mar 2007 - 22:37)
J'ai des "boutons" qui sont des images et qui "appellent" les pages que je veux afficher. Mon problème étant que je veux dire où les afficher et c'est là que je bloque...
J'arrive pas à mieux expliquer
Encore envie de m'aider ???
Modifié par Iscambe (27 Mar 2007 - 22:37)
Iscambe a écrit :
J'ai des "boutons" qui sont des images et qui "appellent" les pages que je veux afficher. Mon problème étant que je veux dire où les afficher et c'est là que je bloque...
Tu ne prends pas le problème comme il faut. Tes « boutons » sont, je suppose, des liens ? Ces liens appellent la page en cours (index.php), mais en lui passant des paramètres différents. Du coup, la page HTML générée par le code PHP va inclure des contenus différents.
Bref, ce qu'il faut retenir : tu n'appelles pas un contenu à afficher dans une « zone » de ta page, mais tu recharges une page HTML complète, différente.
Savoir à quel endroit sur la page afficher le contenu n'a rien à voir avec PHP. Il s'agit juste de positionner un élément HTML, par exemple en utilisant les styles CSS.
Le truc à ne jamais oublier lorsqu'on fait des pages en PHP :
Regarder le code source de la page générée par le serveur. Théoriquement, on devrait obtenir une page HTML en bonne et due forme. Après, il s'agit juste de mise en forme via CSS...
Salut tt le monde,
Bon Iscambe, en dehors d'appeler ton fichier où se trouve le menu que tu veux insérer index.php tout celà devrait être assez facile à régler. Donc si tu peux nous donner du code ça devrait aller. Même si comme tu as l'air très débutant ça risque d'être un peu laborieux dans un premier temps... Mais bon c'est pas grave non plus.
Iscambe a écrit :
Voici mon code :
<div class="ZONE"> <?php include('index.php'); // Nous appelons notre menu ?> </div>
Bon Iscambe, en dehors d'appeler ton fichier où se trouve le menu que tu veux insérer index.php tout celà devrait être assez facile à régler. Donc si tu peux nous donner du code ça devrait aller. Même si comme tu as l'air très débutant ça risque d'être un peu laborieux dans un premier temps... Mais bon c'est pas grave non plus.
Ma mise en page dans index.php est dans ce style :
Dans ma page Historique.php, j'ai :
J'ai essayé de faire une table pour voir apparaitre ma page historique à droite dans la page mais ce n'est pas concluant...
Bon si je dois laisser tomber, dites-le moi...
Merci de vos efforts en tout cas.
<body bgcolor="#000000">
<table border="0" cellpadding="0" cellspacing="0" width="34%">
<tr><!-- row 1 -->
<td colspan="5"><img name="n_r1_c1" src="images/_r1_c1.jpg" width="1000" height="60" border="0" alt="fond"></td>
</tr>
<tr><!-- row 2 -->
<td rowspan="2"><img name="n_r2_c1" src="images/_r2_c1.jpg" width="60" height="940" border="0" alt="fond"></td>
<td><table align="left" border="0" cellpadding="0" cellspacing="0" width="240">
<tr><!-- row 1 -->
<td><a href="index.php" target="_self"><img name="n_r2_c2" src="images/_r2_c2.jpg" width="240" height="124" border="0" alt="fond"></a></td>
</tr>
<tr><!-- row 2 -->etc...
Dans ma page Historique.php, j'ai :
<table border="1" cellpadding="5">
<tr><td>
<div class="frame">
<?php
include('index.php');
?>
</div></td>
<td><img src="images/historique/image.jpg" width="733" height="744" border="0"></td></tr>
</table>
J'ai essayé de faire une table pour voir apparaitre ma page historique à droite dans la page mais ce n'est pas concluant...
Bon si je dois laisser tomber, dites-le moi...
Merci de vos efforts en tout cas.
Iscambe a écrit :
Bon si je dois laisser tomber, dites-le moi...
Si tu veux j'utilise ma baguette magique pour résoudre ton problème (dont la définition est, tu l'avoueras, peu claire...), te faire assimiler en deux phrases des bases de programmation PHP, et d'intégration HTML/CSS, et avec ça cent balles et un mars ?
Problème : je n'ai pas de baguette magique.
Pour faire les choses correctement, il te faut :
- avoir des bases même très limitées en PHP (voir par exemple PHP Débutant), ou au moins être capable de suivre le tutoriel sans en oublier des bouts ;
- avoir des bases correctes en HTML et CSS.
Pour la question du « comment je dis où le contenu doit aller dans la page », ça semble surtout être la deuxième partie qui bloque.
Le code que tu cites est caractéristique d'une mise en page « à l'ancienne », à base de tableaux de mise en forme. C'est loin d'être l'idéal pour réussir à positionner correctement le contenu que tu inclues. Concrètement, dans un tableau de mise en forme, tu auras une cellule du tableau (ou plus probablement d'un des multiples tableaux imbriqués) prévue pour accueillir le contenu d'une colonne de droite. Ta fonction include (PHP) devra donc être placée à cet endroit.
Mais si tu es perdu dans ton propre code HTML ça risque effectivement d'être difficile.
Auquel cas : laisser de côté pour l'instant le PHP, et repartir sur la base : apprentissage des bases de HTML et CSS, séparation de la structure et de la forme, etc. Alsacréations est un lieu plutôt adapté pour ce genre d'apprentissage. Voir les tutoriels « Bases et indispensables ».
Iscambe a écrit :
J'ai essayé de faire une table pour voir apparaitre ma page historique à droite dans la page mais ce n'est pas concluant...
On ne fait pas apparaitre une page dans une page. On inclue un bout de code dans du code. En quelques sorte, c'est un copier-coller automatisé de code.
Au final, on obtient une page HTML unique, mais dont le contenu peut provenir de multiples fichiers (de manière invisible pour le navigateur et l'utilisateur : tout se passe du côté du serveur).
Modifié par Florent V. (28 Mar 2007 - 00:24)
Ok merci d'avoir pris le temps de répondre même si c'est pour me dire que je dois recommencer de zéro.
Il me semblait pourtant que j'étais pas loin de réussir à "coller" mon texte là où je voulais. Mais on dirait que non.
J'ai fait un site tout bête l'année dernière en html qui rend bien... J'ai dû louper des étapes entre les deux...
Merci encore
Iscambe
Modifié par Iscambe (28 Mar 2007 - 09:02)
Il me semblait pourtant que j'étais pas loin de réussir à "coller" mon texte là où je voulais. Mais on dirait que non.
J'ai fait un site tout bête l'année dernière en html qui rend bien... J'ai dû louper des étapes entre les deux...
Merci encore
Iscambe
Modifié par Iscambe (28 Mar 2007 - 09:02)