[css/html/...php] ne pas afficher certain champs

ne pas afficher certain champs [css/html/...php] - HTML/CSS - Programmation

Marsh Posté le 19-04-2007 à 12:14:36    

Bonjour,
 
j'aimerais que qq1 m'aide à regler un (vieux) probleme ^^
 
j'affiche les resultats d'une requete sous forme de tableau...
 
j'ai fait une condition pour que les champs ne correpondant pas a une
certaine date ne s'affiche pas.
 
Le probleme c'est que la seule solution que j'ai trouvé par ne pas affiché ces champs c'est
de leur attribuer une class "hidden" ... donc il ne s'affiche pas mais ils me font des espaces
"vide" sur mes pages...
 
bon un peu de code en esperant etre plus clair :
 
la requete :
 

Code :
  1. $date = date("Y-m-d" );
  2. $date_blacklist = date('Y-m-d', mktime(0,0,0, date("m" )-3 , date("d" ) , date("Y" ))); 
  3. if($date>$row[renouvellement] && $row[renouvellement] > $date_blacklist AND $row[statut] == NULL)
  4.        $class = "exclu" ;
  5.   elseif($row[renouvellement] <= $date_blacklist AND $row[statut] == NULL){
  6.    $class = "exclu";
  7.    }
  8.   elseif($row[statut] == liquidation){
  9.    $class = "exclu";
  10.    }
  11.   elseif($row[statut] == exclu){
  12.    $class = "exclu";
  13.    }
  14.   else{
  15.        $class = "result";
  16.    }
  17.   echo "<table border=\"0\" cellspadding=\"15\" cellspacing=\"10\" class='".$class."'>";
  18.   echo "<tr>";
  19.   echo "<td width=\"300\" colspan=\"2\" align=\"center\"><b>".$row[societe]."</b></td>";
  20.   echo "</tr>";
  21.   echo "<tr>";
  22.   echo "<td width=\"150\" align=\"center\">".$row[adresse]."</td>";
  23.   echo "<td width=\"150\" align=\"center\"><table><tr><td class=\"result\" align=\"center\">".$row[cp]."</td></tr>";
  24.   echo "<tr><td class=\"result\" align=\"center\">".$row[ville]."</td></tr></table></td>";
  25.          echo "</tr>";
  26.   echo "<tr>";
  27.   echo "<td width=\"150\" align=\"center\">"."Tel : ".$row[tel]."</td>";
  28.   echo "<td width=\"150\">"."Fax : ".$row[fax]."</td>";
  29.          echo "</tr>";
  30.   echo "<tr>";
  31.   echo "<td colspan=\"2\" width=\"300\" align=\"center\"><a href=\"".$row['site']."\" target=_blank class=\"lien2\">".$row['site']."</a></td>";
  32.   echo "</tr>";
  33.       echo "</table>";


 
et un bout de la feuille de style :
 

Code :
  1. table.result {
  2. margin-top: 10pt;
  3. position: relative;
  4. width: 300px;
  5. height: 200px;
  6. background-color : #F6B60E;
  7. color : #185B9E;
  8. font-size : 10pt;
  9. border : thin solid #185B9E;
  10. font-style : normal;
  11. font-family : arial;
  12. }
  13. table.exclu {
  14. position: relative;
  15. visibility : hidden;
  16. }


 
merci pour votre aide   :jap:

Reply

Marsh Posté le 19-04-2007 à 12:14:36   

Reply

Marsh Posté le 19-04-2007 à 12:31:49    

Reply

Marsh Posté le 19-04-2007 à 12:44:01    

gatsu35 a écrit :

display:none [:spamafote]


 
non j'ai essayé mais ca marche pas  :sweat:  
 
merci quand meme  :D  

Reply

Marsh Posté le 19-04-2007 à 12:54:41    

heu qu'est ce qui ne marche pas
c'est bien beau de dire ca marche pas.
Mais qu'est ce qui marche pas.
et puis le display:none ca cache totalement l'élément et l'enleve du flux, alors que le visibility:hidden, laisse l'element dans le flux

Reply

Marsh Posté le 19-04-2007 à 13:17:01    

ben ca marche pas ca veut dire que ca n'a strictment rien changé...j'ai tjs des vides comme si les champs etait juste caché (hidden)

Reply

Marsh Posté le 19-04-2007 à 14:26:31    

...peut etre que ca marche pas parceque j'affiche ca ds ds table ? si je fait des div avec un display: block pour le champs a afficher et display: none pour celui qui ne rempli pas les conditions ca pourraitmarcher ?
 
j'v tester

Reply

Marsh Posté le 19-04-2007 à 14:37:44    

toi donner moi code HTML généré + toi donner moi code Javascript à toi qui fait tralala magique, ainsi moi pouvoir aider toi

Reply

Marsh Posté le 19-04-2007 à 14:41:24    

apparemment ca a l'air de marcher avec ça... bon c du bricolage mais ca a l'air de fonctionner  [:cupra]  
 

Code :
  1. #result {
  2. display: block;
  3. }
  4. #exclu {
  5. display: none;
  6. }


 

Code :
  1. if($date>$row[renouvellement] && $row[renouvellement] > $date_blacklist AND $row[statut] == NULL)
  2.        $class = "exclu" ;
  3.   elseif($row[renouvellement] <= $date_blacklist AND $row[statut] == NULL){
  4.    $class = "exclu";
  5.    }
  6.   elseif($row[statut] == liquidation){
  7.    $class = "exclu";
  8.    }
  9.   elseif($row[statut] == exclu){
  10.    $class = "exclu";
  11.    }
  12.   else{
  13.        $class = "result";
  14.    }
  15.      echo "<div id='".$class."'>";
  16.   echo "<table border=\"0\" cellspadding=\"15\" cellspacing=\"10\" class=\"result\">";
  17.   echo "<tr>";
  18.   echo "<td width=\"300\" colspan=\"2\" align=\"center\"><b>".$row[societe]."</b></td>";
  19.   ...      echo "</table>";
  20.   echo "</div>";


 
Merci Gatsu de m'avoir mi sur la voie :)

Reply

Marsh Posté le 19-04-2007 à 15:13:25    

Putain d'bordel, pour acceder une valeur par un attribut associatif on fait

Code :
  1. $data['val']

et non pas

Code :
  1. $data[val]

:fou:  :fou:  :fou:  :fou:  :fou:  :fou:  :fou:  :fou:  :fou:

 

Putain php c'est trop tolérant, ça devrait vous péter à la gueule ce genre de merde :o


Message édité par Shinuza le 19-04-2007 à 15:14:03

---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
Reply

Marsh Posté le 19-04-2007 à 15:41:02    

heu si val est une variable c'est directement [val] :o:o:o:o:o

Reply

Marsh Posté le 19-04-2007 à 15:41:02   

Reply

Marsh Posté le 19-04-2007 à 17:34:39    

TG noob, une variable en php ça commence par "$" :o
Hors la y'a pas de "$" :o, donc c'est considéré comme une constante :o


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
Reply

Marsh Posté le 19-04-2007 à 17:45:37    

spa faux... mais ça tourne son truc ? y a pas un parse error ?


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
Reply

Marsh Posté le 19-04-2007 à 17:56:14    

Ca tourne et ça génère une erreur en background :

 
Code :
  1. Notice: Use of undefined constant val - assumed 'val' in xxx.php on line x
 

Il convertit la prétendue constante en string, pour peu que le logging des erreurs capte tous les niveaux, chaque ligne de $val[merde] écrira une erreur à chaque putain d'affichage de la page :o

 
Code :
  1. echo '<div id="',$class,'">',
  2.             '<table border="0" cellspadding="15" cellspacing="10" class="result">',
  3.             '<tr>',
  4.             '<td width="300" colspan="2" align="center"><b>',$row['societe'],'</b></td>',
  5.             '</tr>',
  6.             '</table>',
  7.             '</div>';
 

Et ça non plus spa plus mal hein, enfin ce sont des bonnes habitudes à prendre, après chacun sa merde :o


Message édité par Shinuza le 19-04-2007 à 19:38:20

---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
Reply

Marsh Posté le 19-04-2007 à 18:08:11    

le tableau est magnifique :love:


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
Reply

Marsh Posté le 20-04-2007 à 12:14:18    

Salut  :sol:  
 
bon pour les plus curieux d'entre vous...ca tourne sans génerer d'erreur..
mais bon je n'ai absolument rien contre rendre mon code un peu plus "clean"
meme si je trouve votre maniere d'afficher votre savoir un peu cavaliere
[:americas]

Reply

Marsh Posté le 20-04-2007 à 12:18:57    

vire les tableaux et utilise les css ;)


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
Reply

Marsh Posté le 20-04-2007 à 15:09:38    

azylum01 a écrit :

Salut  :sol:

 

bon pour les plus curieux d'entre vous...ca tourne sans génerer d'erreur..
mais bon je n'ai absolument rien contre rendre mon code un peu plus "clean"
meme si je trouve votre maniere d'afficher votre savoir un peu cavaliere
[:americas]


Sache que ça n'est pas directement contre toi, faut juste m'expliquer d'ou vient ce style de code  [:sinclaire]

 
zecrazytux a écrit :

vire les tableaux et utilise les css ;)

 

Ca veut rien dire ça [:pinguino]
Tu peux très bien utiliser des css avec des tableaux, le conseil à donner c'est de developper selon les standards (donc utiliser les tableaux pour des données tabulaires) en l'occurence je me demande s'il ne traite pas des données tabulaires.


Message édité par Shinuza le 20-04-2007 à 15:12:42

---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
Reply

Marsh Posté le 20-04-2007 à 16:42:09    

Code :
  1. echo '<div id="',$class,'">',
  2.             '<table border="0" cellspadding="15" cellspacing="10" class="result">',
  3.             '<tr>',
  4.             '<td width="300" colspan="2" align="center"><b>',$row['societe'],'</b></td>',
  5.             '</tr>',
  6.             '</table>',
  7.             '</div>';


 
sauf que des données tabulaires aussi bien rangées ça fait mal :)
il créé un tableau d'une seule cellule dans un div :o
 
pas de données tabulaires ça...


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed