Pages :
Bonjour,

j'ai bien compris le tutoriel qui suit :

Inclure un fichier dans un autre, grâce à CSS et PHP

à cette adresse :

Inclure un fichier dans un autre, grâce à CSS et PHP
édit par Igor: merci de faire de vrais liens pour les url à rallonge qui déforment le forum dans les petites résolutions.

et je remerci l'auteur, c'est bien fait.

Voici mon probleme :

J'ai un cadre résultant de ce code :


if (!isset($_GET['page'])) $page= 'accueil'; else $page= $_GET['page']; 
 switch($page)
{
case 'accueil': include ('accueil_fond.php');break;
case 'catalogue': include ('pages/catalogue/interface/catalogue/index.php');break;
case 'france': include ('pages/implantation/france.html');break;
} 
?>


Ca, ca marche bien la page demandé s'affiche bien

Maintenant, par exemple dans la page cataloque, j'ai un tableau, dans lequel j'ai un autre menu, avec une partie ou je remets le même code pour appeler une page dans mon tableau.

Le code :


?php 
if (!isset($_GET['page'])) $page= 'catalogue'; else $page= $_GET['page']; 
 switch($page)
{
case 'accueil': include ('index.php');break;
case 'catalogue': include ('catalogue_fond.php');break;
case 'couteau': include ('pages/catalogue/couteaux/index.php');break;
case 'france': include ('pages/implantation/france.html');break;
} 

?>


Et ca ne marche pas, car c'est une frame dans une frame.

En gros, je voudrais savoir comment pourrait - on avoir une frame dans un frame ( Ex : index?catalogue?gammeA)

Je ne sais pas si j'ai été clair

merci pour vos réponses

Smiley smile
Modifié par Igor (22 Oct 2005 - 00:38)
pierrax a écrit :
Il n'y a ersonne sur ce forom

Smiley fouille


Bonjour,

35 minutes entre ton post et ton up Smiley ohwell
Administrateur
pierrax a écrit :
Smiley coucou
il n'y a toujours personne

Sans doute que :
- ton problème n'est pas assez clair pour les "aideurs"
- ton code n'est pas suffisant (une url peut-être)
Je comprends.

Par exemple, j'affiche une page dans un frame avec une adresse du type:
www.mondomaine.com/index?pagea

la page s'affiche, pas de probleme.

Maintenant, dans ma "pagea", j'ai un menu qui me sert à afficher plusieurs page dans un cadre css qui se site sur ma "pagea".

le problème est que je n'arrive pas à le faire. Je voudrais afficher plusieur "pageb" dans ma "pagea".

Voici un petit dessin :


upload/3788-pagea.JPG

le dessin est pas super, mais bon.

Est-il possible d'avoir ce type de configuration :

www.mondomaine.com/index?pagea=pageb
www.mondomaine.com/index?pagea=pagec

etc...

C'est dur d'expliquer quelque chose de compliqué qui n'est pas compliqué.

Merci de vortre patience
Modifié par pierrax (22 Oct 2005 - 15:07)
Salut,

je viens de lire ta question...

J'ai essayé de comprendre ce que tu voulais ... ... Je n'y suis pas arrivé.

Enfin si peut être que j'ai compris mais je ne suis pas sur. Et si je m'embarque dans une réponse sur une telle base je ne sais pas trop où on va.

Donc :

"por favor" reformule ta question très soigneusement pour qu'on la comprenne.

Donne nous le code php auquel tu es rendu (pas le html généré seulement)

Va jeter un oeil la dessus :
PHP : on reprend tout à zéro

Parce que la réitération du terme frame dans tes post fait craindre que tu ne maitrises pas vraiment les techniques dont il est question.

Bon courage
Merci pour ta réponse.

Le tutoriel en question traite de l'affichage de plusieurs pages dans un même cadre.

Ca marche tres bien / Pour rappel, voici le code :



Pour faire étape par étape, voici ma demarche.

Etape 1 :

j'ai une page index, avec un cadre qui contient le code suivant :


if (!isset($_GET['page'])) $page= 'accueil'; else $page= $_GET['page']; 
switch($page)
{
case 'accueil': include ('accueil_fond.php');break;
case 'catalogue': include ('pages/catalogue/interface/catalogue/index.php');break;
case 'france': include ('pages/implantation/france.html');break;
} 
?>


Ce code me permet d'afficher, plusieurs pages dans ce même cadre.

Ca, ca marche trés bien.

Etape 2 :

J'ai une "page b" qui, elle même, contient un cadre avec le même code.
ce cadre, lui aussi, me permet d'afficher encore d'autre page.

Voici le code du cadre de la page b :


if (!isset($_GET['pageb'])) $page= 'pageb'; else $pageb= $_GET['pageb']; 
switch($page)
{
case 'accueil': include ('accueil_fond.php');break;
case 'pageb': include ('pages/catalogue/interface/catalogue/index.php');break;
case 'france': include ('pages/implantation/france.html');break;
} 
?>


Et la, ca ne marche pas.

Ma question est de savoir s'il est posible d'afficher plusieur pages dans un même cadre (Ca, j'ai bien compris) et de refaire la meme chose dedans.

J'ai un cadre "a" qui affiche une page avec un cadre "b"

Ouf, c'est dur de faire simple

Smiley murf
Récapitulatif, plus simple.

On est sur la page d'accueil de ton site. Cette page se situe dans un cadre au centre.

Tu as un menu sur la gauche (par exemple) et quand tu clique sur un lien, cette page s'affiche au centre.

Ensuite dans la page qui viens de s'afficher, tu as aussi un menu, et tu voudrais que la page appelé par ton menu (pas le "général" mais celui de la page qui viens d'apparaitre) vienne s'insérer dans un cadre se situant dans cette page.

J'appelerais ca faire de l'include includer ^^.

Pour t'aider beaucoup plus, ils nous faudrais :

- Ton code php de la page qui contient ce deuxième menu.
- Le code de la page a affiché dans la deuxième page.
- Une url si possible.
- Les 12 chiffres figurant sur ta carte bleu, avec la date de validité, et bien sur les 3 chiffres figurant au dos ... Smiley langue Smiley langue Smiley biggol
(Je rigole pour le dernier point bien sur !! ^^)

@bientot (perso je ne suis pas la de la semaine, donc donne ces informations et attends une réponse de quelqu'un d'autre Smiley cligne ) bonne chance
Mercipour ta réponse

Procèdons étapes par étapes :

Déja, voici une lien :

http://www.coqalane-communication.com/afa/


Etape 1 :

J'ai une page "index" avec ce code :


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html>
<head>
<STYLE TYPE="text/css">
BODY {
	scrollbar-face-color: #FF0000;
	scrollbar-shadow-color: #FFFFFF;
	scrollbar-highlight-color: #FFFFFF;
	scrollbar-3dlight-color: #000000;
	scrollbar-darkshadow-color: #000000;
	scrollbar-track-color: #999999;
	scrollbar-arrow-color: #FFFFFF;
	color: #000000;
}
</STYLE>
<title>AFA</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type=text/javascript>
var AgntUsr=navigator.userAgent.toLowerCase();
var Opr1=AgntUsr.indexOf('opera')!=-1?1:0;
if(!Opr1) function Go(){return}
</script>
<script language="JavaScript" src="scripts/v2_common.js" type="text/JavaScript"></script>
<script language="JavaScript"src="scripts/v2_scroller.js" type="text/JavaScript"></script>
<script language="JavaScript" src="scripts/v2_5glib.js" type="text/JavaScript"></script>
<script language="JavaScript" src="scripts/def2.js" type="text/JavaScript"></script>
<script language="JavaScript" src="scripts/v2_tiag_menu.js" type="text/JavaScript"></script>
<LINK href="scripts/menu.css" type=text/css rel=stylesheet>
<link href="ccs/interface.css" rel="stylesheet" type="text/css">
<link href="ccs/block.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
body {
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
}
-->
</style></head>
<body>
<table  border="0" cellpadding="0" cellspacing="0">
  <table  border="0" cellpadding="0" cellspacing="0">
    <tr>
      <td rowspan="2" class="fond_entete"><img src="images/interface/logo.jpg" width="166" height="92" class="fond_entete"></td>
      <td colspan="2" class="fond_entete"><img src="images/interface/entete.jpg" width="600" height="70"></td>
      <td rowspan="2" class="fond_entete"><img src="images/interface/entete_bout.jpg" width="166" height="92"></td>
    </tr>
    <tr>
      <td colspan="2" class="fond_entete"><TABLE height="23" border=0 cellPadding=0 cellSpacing=0>
        <TBODY>
          <TR>
            <TD height="23"><IMG height=22 
            src="images/Ecart.jpg" width=4></TD>
            <TD>
              <DIV id=i1 style="Z-INDEX: 1"><a 
            href="index.php?page=presentation" onMouseOver=m5_roll(0,1,0) 
            onMouseOut=m5_roll(0,0,0)><img title="Pr&eacute;sentation de l'association" 
            height=20 
            src="images/m5_0_0.gif" width=114
            border=0 name=mmmenu0></a></DIV></TD>
            <TD><IMG height=20 
            src="images/Ecart.jpg" width=4></TD>
            <TD>
              <DIV id=i2 style="Z-INDEX: 1"><a 
            href="pages/soufflage/soufflage.htm" target="con" onMouseOver=m5_roll(1,1,0) 
            onMouseOut=m5_roll(1,0,0)><img title="Notre savoir faire" 
            height=20 
            src="images/m5_1_0.gif" width=114
            border=0 name=mmmenu1></a></DIV></TD>
            <TD><IMG height=20 
            src="images/Ecart.jpg" width=4></TD>
            <TD>
              <DIV id=i3 style="Z-INDEX: 1"><a 
            href="pages/injection/injection.htm" target="con" onMouseOver=m5_roll(2,1,0) 
            onMouseOut=m5_roll(2,0,0)><img 
            title="Nos secteurs d'activite" height=20 
            src="images/m5_2_0.gif" width=114
            border=0 name=mmmenu2></a></DIV></TD>
            <TD><IMG height=20 
            src="images/Ecart.jpg" width=4></TD>
            <TD>
              <DIV id=i4 style="Z-INDEX: 1" width="115"><A 
            href="pages/catalogue/index.htm" target="con" onmouseover=m5_roll(3,1,0) 
            onmouseout=m5_roll(3,0,0)><IMG 
            title="Nos produits" height=20 
            src="images/m5_3_0.gif" width=114
            border=0 name=mmmenu3></A></DIV></TD>
            <TD><IMG height=20 
            src="images/Ecart.jpg" width=4></TD>
            <TD><DIV id=i6 style="Z-INDEX: 1"><A 
            href="pages/customers/index.php" target="con" onmouseover=m5_roll(5,1,0) 
            onmouseout=m5_roll(4,0,0)><IMG 
            title="Visite virtuelle" height=20 
            src="images/m5_5_0.gif" width=115
            border=0 name=mmmenu5></A></DIV></TD>
            <TD><IMG height=20 
            src="images/Ecart.jpg" width=4></TD>
          </TR>
        </TBODY>
      </TABLE></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td colspan="2"><a href="index.php?page=historique">pageb</a></td>
      <td>&nbsp;</td>
    </tr>
    <tr>
      <td><div>
        &nbsp;
      </div></td>
      <td><div class="frame">
        <?php 
if (!isset($_GET['page'])) $page= 'accueil'; else $page= $_GET['page']; 
 switch($page)
{
case 'accueil': include ('pages/interface/accueil.php');break;
case 'historique': include ('pages/presentation/historique/index.php');break;
} 
?>
      </div></td>
      <td><img src="images/Block.gif" width="15" height="13"></td>
      <td><div>&nbsp;</div></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td colspan="2"><?php 
  include('pages/interface/pied.htm');   // Nous appelons le pied de page
?></td>
      <td>&nbsp;</td>
    </tr>
  </table>

</body>
<script language=JavaScript>launch();</script>
</html>


Etape 2 :

ma page b :


<html>
<head>
<title>pageb</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="../../../ccs/interface.css" rel="stylesheet" type="text/css">
<link href="../../../ccs/block.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="100%"  border="0" align="left" cellpadding="0" cellspacing="0">
  <tr>
    <td width="88%" height="15">&nbsp;
    </td>
    <td width="12%" rowspan="2"><p><a href="index.php?page=historique">Page 1</a></p><p><a href="index.php?page=historique=page2">Page 2</a></p><p><a href="index.php?page=historique=page3">Page 3</a></p><p><a href="index.php?page=historique=page4">Page 4</a></p></td>
  </tr>
  <tr>
    <td height="269"><div class="pageb">
          <?php 
if (!isset($_GET['page'])) $page= 'historique'; else $page= $_GET['page']; 
switch($page)
{
case 'historique': include ('page1.php');break;
case 'page1': include ('page1.php');break;
case 'page2': include ('page2.php');break;
case 'page3': include ('page3.php');break;
case 'page4': include ('page4.php');break;
} 

?>
      </div></td>
  </tr>
</table>
</body>
</html>


Etape 3 :

Les page "page1", "page"2 ect... comprennent du texte.

Pour accédre à la page b, cliquez sur le lien "page b"

Mais, pour mon problème, il s'agit bien d'un include dans un include.

Merci



Smiley smile
Bonjour,

N'ayant jamais testé cette syntaxe j'ignore si elle est vraiment fonctionnelle
http://www.coqalane-communication.com/afa/index.php?page=historique=page2


Je sais par contre que
http://www.coqalane-communication.com/afa/index.php?page=historique&amp;autre-variable=page2

fonctionne.

En outre le fait d'appeler des pages de cette façon peut poser problème (à ce que j'en sais et ce qu'en dit Google par exemple) pour le référencement, tous les moteurs ne prenant pas en compte de façon correcte ce type d'url.

Pour ce qui me concerne j'utilise des noms de page qui sont composés de mots clef significatifs, avec pour résultat que mes pages apparaissent en général en très bonne place dans les résultats de recherche.

Sur le plan de la programmation ce n'est pas plus difficile à réaliser, et cela procure donc certains avantages...

Pour en témoigner : biocarburants biomasse

biocarburants hvb
Modifié par jcm (23 Oct 2005 - 14:52)
Merci,

Comment tu le mets en oeuvre avec le code que j'utilise ?


<?php 
if (!isset($_GET['page'])) $page= 'historique'; else $page= $_GET['page']; 
switch($page)
{
case 'historique': include ('page1.php');break;
case 'page1': include ('page1.php');break;
case 'page2': include ('page2.php');break;
case 'page3': include ('page3.php');break;
case 'page4': include ('page4.php');break;
} 

?>


Smiley murmure
Modifié par pierrax (24 Oct 2005 - 08:24)
Bonsoir, est qu'il serait possible d'avoir le code fontionnel pour cette operation stp...
Ce serait sympa car j'ai la meme difficulté
Bonjour,

Le principe que j'utilise :

Une page "modèle" sera recopiée à chaque création de page dans le répertoire approprié et nommée avec des mots clef correspondant au contenu de la page.


Cette page ne contient que des instructions, dont la première est de détecter quelle est la page demandée par le navigateur (REQUEST_URI puis un Regexp afin de conserver ce qui est au delà du dernier slash) et des "include" pouvant être conditionnels.

<?php
$page = REQUEST_URI
$page = regexp $page
SELECT FROM BDD title, description, contenu, charte_graphique, répertoire......enfin tout ce qu'il faut... WHERE nompage = $page
?>
<doctype.........>
<head>
<title><?php echo $title ?> </title>
<meta name="description" content="<?php echo $description ?> />
etc.......
<link type="text/css" rel="stylesheet" href="<?php echo $repertoire ?>/<?php echo $charte_graphique ?>.css" />
<?php include($charte_graphique. 'iehack.php'); ?>
</head>
<body>
<div id=".........>
<?php echo $contenu ?>
<?php include($pied_page. '.php'); include($repertoire. '/generateur_menu.php'); ?>
</body>
</html>


Le résultat de REQUEST_URI sert à appeler les données de la BDD, qui contiendront des conditions si nécessaire.

Par exemple il y a plusieurs chartes graphiques dans la dernière version de mon site.

Chacune a un nom, et à l'appel des données j'appelle aussi le nom de la charte graphique, ce qui donne un "include" de la forme :
include($nom_de_la_charte. 'css');
.

Il est donc conditionné par le résultat de la requête.

Même chose pour les hacks IE en fonction de la charte.

Chaque page contient aussi l'appel à un script qui génère les menus : ils seront donc générés exactement en fonction de chaque page et de chaque charte graphique (absence de lien pour la page visitée, apparition des liens de la sous rubrique si elle existe...).

Un formulaire sert à la création des pages, avec les indications du nom du répertoire de destination, du nom que l'on veut donner à la page, du nom de la charte graphique, du fait que la page doit être immédiatement visible ou non, de la date de création, de la balise "title" et de la description (head), du "title" des liens qui mèneront vers cette page depuis les autres pages... enfin tout le nécessaire !

A l'envoi du formulaire la BDD est chargée et la page "modèle" copiée dans le répertoire de destination.

Fonctionnement immédiat garanti, avec la charte graphique choisie, entièrement gérée en CSS.
Modifié par jcm (29 Oct 2005 - 12:57)
N'etant pas tres bon dans la programmation de site et n'ayant pas reussi a realiser ce que je voulais j'ai finalement réaliser ceci a l'aide d'iframe (non pitier ne me blamer pas snif...) .
J'ai donc mon menu qui appelle via le code php une fenetre dans un div et elle meme est alors equiper d'un Iframe appelant d'autre page a son tour... Mais sous IE il y a un petit soucis...
Quand j'appele ma page contenant l'iframe celle ci s'affiche mais mon menu disparais... Ce qui n'est pas le cas avec les autres sections de mon menu.
Donc quelqu'un est il capable de m'expliquer pourquoi et sinon de me donner le code complet permettant de realiser plusieurs appele de page ....
Pour plus de clarté pour ceux qui desirerais m'aider voici le liens vers mon site : http://gunztheduel.free.fr
(attention le probleme n'est a prioris valable qu'avec IE; firefox marchant convenablement)


(au fait merci a jcm mais je n'ai pas tres bien compris tes explications... je dois vraiment etre c...)
Modifié par skaor (28 Oct 2005 - 19:17)
Bonjour Skaor,

Je viens d'ajouter un exemple de contenu de la page modèle dans mon dernier post pour une meilleure compréhension.
Pages :