tableau html

gilleswath
Invité n'ayant pas de compte PHPfrance

22 juin 2006, 12:31

bonjour,
je suis en train de créer un site, en utilisant des tableau pour la mise en page.
je voudrais savoir s'il est possible de faire des liens vers une cellule d'un tableau comme avec les cadres.
je m'explique :
imaginons que j'ai un tableau avec 6 cellules, dans chaque cellule, j'ai fait un include d'une page. et j'aimerais que quand je clique sur un lien qui se trouve dans la cellule 5 par exemple, la nouvelle fenetre qu'ouvre le lien, je voudrait qu'elle s'affiche dans la cellule 5 et non dans une autre fenetre ni à la place de la fenetre qui est ouverte.

est-ce possible??
merci d'avance.
gw

gilleswath
Invité n'ayant pas de compte PHPfrance

22 juin 2006, 13:49

pour ceux qui ont le même problème, voici la solution :

utilisation iframe

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

22 juin 2006, 17:27

Pour afficher des documents dans une table, on peut utiliser des iFrame dans les céllules TD.
Ainsi, les liens hypertextes du document logé dans un cadre/céllule sont affichés dans ce même cadre/céllule
à l'exception des liens qui font un TARGET vers un cadre spécifique de la page principale.

Illustration:

soit la page principale suivante :
C'est un programme PHP qui arange une liste de documents dans la table sous la forme de 4 colonnes par ligne.
Chaque document est logé dans iFrame dans une céllule du tableau
Par ailleurs, un iFrame nommé afficheur est prévu pour des appels de liens avec TARGET.

Page "grille.php':
<!-- Début de la table HTML -->
<table border>
<tr><td colspan=4><h2>Documents</h2>
<?php 
//pages disponibles à afficher dans la table HTML
$doc = array("doc1.htm", "doc2.htm", "doc3.htm", "doc4.htm");
//Affichage des pages sous forme de table HTML
for ($i=0; $i<count($doc); $i++){
	if ($i%4==0) echo "<tr>"; //nouvelle ligne au bout de 4 colonnes
	echo "<td><iframe name='cellule_$i' src='$doc[$i]'></iframe>"; //page affichée dans une céllule TD sous forme de iFrame
}
?>
<tr><td colspan=4><h2>Afficheur</h2><iframe name='afficheur'></iframe>
</table>

<!-- Styles appliqués -->
<style>
iframe{width:100%; height:200}
td {width:200}
</style>
Par ailleurs on a 4 documents HTML qui contiennent des liens hypertextes.
Supposons qu'un document fait des liens externes avec un target vers un cadre 'afficheur' prévu à cet effet
et se trouvant dans la page principale "grille.php".

Les documents d'exemple sont :

Page "doc1.htm":

Code : Tout sélectionner

<h1>Doc1</h1> <hr> <p><A href='doc2.htm' target='afficheur'>doc2 dans un autre cadre</A> <p><A href='doc3.htm' target='afficheur'>doc3 dans un autre cadre</A> <p><A href='doc4.htm' target='afficheur'>doc4 dans un autre cadre</A>
Page "doc2.htm":

Code : Tout sélectionner

<h1>Doc2</h1> <hr> <p><A href='doc3.htm'>Aller à doc3</A> <p><A href='doc4.htm'>Aller à doc4</A>
Page "doc3.htm":

Code : Tout sélectionner

<h1>Doc3</h1> <hr> <p><A href='doc2.htm'>Aller à doc2</A> <p><A href='doc4.htm'>Aller à doc4</A>
Page "doc4.htm":

Code : Tout sélectionner

<h1>Doc4</h1> <hr> <p><A href='doc2.htm'>Aller à doc2</A> <p><A href='doc3.htm'>Aller à doc3</A>

Conclusion:

Quand un lien hypertexte ne porte pas l'attribut TARGET, il affiche dans son cadre quelque soit son emplacement
dans le document principal

Par contre quand le lien à un TARGET vers un autre cadre existant dans la page principale, il est redirigé vers
ce cadre.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène