probleme pour cacher a l'affichage une partie des données

nous
Invité n'ayant pas de compte PHPfrance

13 sept. 2007, 16:37

Bonjour,

Voila je voudrai que cela m'affiche qu'une partie des tableaux quand la fenêtre s'ouvre, en faite je le fait afficher selon la date de l'enregistrement si elle est passé le tableau est caché(mis l'on peut quand meme le faire afficher).
Mais bon pour l'instnt mon souci c'est que quand j'ouvre cela s'affiche malgré qu'il sait que cela doit etre cacher.
donc pour baliser j'ai fait :
<?php if ($sty=='hidden') {
?>

	<div id="part1" style="visibility:hidden">
	
	
	
	<?php } else { ?>
	
	<div id="part1" style="visibility:visible"> 

	 <?php  } ?> 
ensuite j'ai mon tableau mes requetes et un div a la fin.

J'ai testé avec du texte sans tableau et cela marche mais pas avec les tableau dans les div.

Auriez vous une idée d'ou pourrai venir le probleme ?

merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

13 sept. 2007, 16:42

si ton div est visible c'est que tu rentres dans le else et pas dans le if, donc que $sty ne contient pas 'hidden'. Regarde du côté de cette variable, affiche là pour voir ce qu'elle contient, ...
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

nous
Invité n'ayant pas de compte PHPfrance

13 sept. 2007, 17:07

non justement cest bien dans hidden qu'il rentre

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

13 sept. 2007, 17:36

Euh... ote moi d'un doute... ton tableau il est bien inclu dans ton div ? c'est pas un div que tu colles n'importe où en plein milieu d'un tableau entre deux lignes ou deux cellules ?

Si ca fonctionne avec du texte simple, il n'y a aucune raison pour que cela ne le fasse pas avec n'importe quel autre élément html....
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

nous
Invité n'ayant pas de compte PHPfrance

14 sept. 2007, 09:33

mon div est entre 2 lignes, en effet c'est ça le probleme. Mais ya pas un moyen de contourner ?

Mammouth du PHP | 19672 Messages

14 sept. 2007, 09:39

Dans un code HTML conforme, il est interdit d'insérer quoique ce soit entre les lignes d'un tableau.
Une balise <table> ne peut avoir comme contenu direct QUE des balises <caption> (facultatives), <thead> (facultatives), <tbody> (facultatives), <tfoot> (facultatives) ou <tr> (obligatoire), cette dernière pouvant se trouver imbriquée dans les trois précédentes.
Une balise <tr> ne peut contenir QUE des balises <th> ou <td>. Ensuite seulement tu peux mettre d'autres types de balises à l'intérieur des <th> ou <td>.

En d'autre termes, si tu as un <div> à afficher dans un tableau, il ne peut se trouver qu'à l'intérieur d'une balise <th> (pas terrible sémantiquement) ou <td>, sinon, ce sera en dehors du tableau.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

nous
Invité n'ayant pas de compte PHPfrance

14 sept. 2007, 10:05

j'ai essayé avec
<tr  style="visibility:hidden">
mais ça ne fonctionne pas. Je n'ai pas d'autre choix que d'utiliser un tableau

merci

Mammouth du PHP | 19672 Messages

14 sept. 2007, 10:19

Fais donc voir le code généré complet de la partie concernée, ce sera plus facile pour t'aiguiller vers une solution fonctionnelle.

Et j'ajoute qu'on est JAMAIS obligé d'utiliser un tableau : un tableau est fait pour mettre en forme des données dites "tabulaires", pas pour faire de la mise en page. ;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

nous
Invité n'ayant pas de compte PHPfrance

14 sept. 2007, 10:54

tout d'abord mon tableau est un vrai tableau il n'est pas utiliser pour mettre en page. Bon finalement j'ai reussi en mettant les propriétés dans tr. Le souci, cest que je veux aussi que l'utilisateur puisse l'afficher grace a un bouton + ou - selon la date concerné.
En faite si il s'agit de truc ancien cela m'affiche un bouton + avec l'intitulé et le reste est caché et ainsi de suite sur la fenetre.
Mais je voudrais que si la personne clique sur le + cela affiche le detail de cette parti mais pas forcement des autres caché, le souci c'est que vu que je n'utilise plu les balises je ne vois pas comment faire
merci

Mammouth du PHP | 19672 Messages

14 sept. 2007, 11:16

Deux choses :
-1- Sans code, impossible de repérer une erreur;
-2- Tout ça se passe coté client, donc on est en JavaScript et le sujet ne concerne pas directement le PHP. Il faut utiliser des gestionnaires d'évènements onclick pour gérer l'affichage ou le masquage de tel ou tel élément d'une page.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

15 sept. 2007, 17:33


/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute