[CSS] [RESOLUT] Pb d'affichage d'un MAJ dans un block CSS par du PHP

Pb d'affichage d'un MAJ dans un block CSS par du PHP [CSS] [RESOLUT] - HTML/CSS - Programmation

Marsh Posté le 22-04-2005 à 09:47:29    

Bonjour,
 
Je monte un site, et tente de mettre en place des mises à jours sous forme de formulaire.
Jusque là tout va bien =)
 
Le problème se pose au niveau de l'affichage de ces mises à jours.
 
J'ai monté un block css comme suit
 

Code :
  1. .main {
  2. position: absolute;
  3. top: 145px;
  4. right: 2%;
  5. width: 54%;
  6. background: black;
  7. padding: 0.5em;
  8. font-size: xx-small;
  9. z-index: 5;
  10. border: 1px solid #fff;
  11. }


 
que j'ai inséré dans un système des plus classique - boucle while -
 

Code :
  1. //Requete = mysql_query
  2. $resultat = Requete("Select * From maj", $connexion);
  3. //suivant = mysql_fetch_array
  4. while($update = suivant($resultat))
  5. {
  6. echo"
  7. <!-- [ main - maj ] -->
  8. <div class=\"main\">
  9. <!-- interieur cadre -->
  10. <span class=\"titre\"><strong>$update[2]</strong><br /></span>
  11. <span class=\"date\"><strong>maj du: </strong>$update[1], </span><a class=\"mail\" title=\"e-mail - webmaster\" href=\"mailto:monmail@chezmoi.com\">$Update[3]</a><br />
  12. <img  alt=\"--\" src=\"bar.jpg\" /><br /><br />
  13. <span class=\"content\">$update[4]<br /><strong>$update[0]</strong></span><br />
  14. <!--  sortie cadre -->
  15. </div>
  16. ";
  17. }


 
La connexion à la base de données marche correctement.
La recupération des données par la requete sous forme de tableau marche correctement.
L'affichage des données ne marche qu'à moitié.
 
Je m'explique =P,
 
si je remplace la div id=main, par un tableau, ça m'affiche toutes les mises à jours dans un tableau différent pour chaque ligne de la table - ie: chaque mise à jour - normal~
 _ _ _ _ _ _ _ _ _ _
|                         |
|  mise à jour n° 1  |
|_ _ _ _ _ _ _ _ _ _|
 
 _ _ _ _ _ _ _ _ _ _
|                         |
|  mise à jour n° 2  |
|_ _ _ _ _ _ _ _ _ _|
 
 _ _ _ _ _ _ _ _ _ _
|                         |
|  mise à jour n° 3  |
|_ _ _ _ _ _ _ _ _ _|
 
 _ _ _ _ _ _ _ _ _ _
|                         |
|  mise à jour n° 4  |
|_ _ _ _ _ _ _ _ _ _|
 
 
 
problème:
mais lorsque je fais comme indiqué ci-dessus, c'est à dire en utilisant un block div, cela n'affiche qu'une seule ligne de la table, et pas le reste.
 
 _ _ _ _ _ _ _ _ _ _
|                         |
|  mise à jour n° 4  |
|_ _ _ _ _ _ _ _ _ _|
 
 
 
si quelqu'un avait une indice ou un idée à creuser pour résoudre ce problème et qu'il souhaitais la partager, n'hésitez pas, je lui en serrais extrèmement reconnaissant!
 
D'avance merci =)


Message édité par h4x0kz3r le 22-04-2005 à 11:15:00
Reply

Marsh Posté le 22-04-2005 à 09:47:29   

Reply

Marsh Posté le 22-04-2005 à 10:49:11    

Chase a écrit :

Je ne sais pas comment faire, mais je sais pourquoi ça ne marche pas :
 
la position absolute sort le conteneur du flux normal, donc une position absolute ne peut désigner qu'un seul et unique emplacement. Donc toutes les div s'affichent au même endroit !
 
Donc il faut forcément changer le "absolute".


Je suis d'accord avec Serge Cerel :jap:
 
J'ajouterais qu'utiliser position: static irait très bien, à la limite en ajoutant float: left (ou right) et clear: both


Message édité par masklinn le 22-04-2005 à 10:49:56

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box, and replicate and expand beyond their wildest dreams by throwing away the limits imposed by overbearing genetic r
Reply

Marsh Posté le 22-04-2005 à 11:14:08    

Citation :

Je ne sais pas comment faire, mais je sais pourquoi ça ne marche pas :
 
la position absolute sort le conteneur du flux normal, donc une position absolute ne peut désigner qu'un seul et unique emplacement. Donc toutes les div s'affichent au même endroit !
 
Donc il faut forcément changer le "absolute".


 
par la source! Je te remercie Chase =)
 
copier/coller c'est vilain vilain, il faudra que je fasse beaucoup plus attention =P
 
bon, maintenant les données de la table s'affiche effectivement
mais alors vraiment n'importe où ='(
 
encore merci, comme quoi parfois à fois à force de regarder son code si souvent, on en manque des passages flagrant, ça aide d'avoir un point de vue exterieur )
 

Citation :

mais alors vraiment n'importe où ='(


 

Citation :

.main {  
position: absolute;  
top: 145px;  
right: 2%;  
width: 54%;  
background: none;
padding: 0;
font-size: xx-small;  
z-index: 5;  
border: none;
}
 
.maj {  
margin: 0 0 145px 0;
background: black;  
padding: 0.5em;  
border: 1px solid #fff;  
}


 
excelente idée =)
j'ai retiré le - margin: 0 0 145px 0; - par contre, sinon ça décalle trop les blocks
et maintenant:
ça s'affiche parfaitement!!
 
tu es mon héros^
 

Citation :

J'ajouterais qu'utiliser position: static irait très bien, à la limite en ajoutant float: left (ou right) et clear: both


 
J'ai essayé ça aussi, mais ça ne place pas les blocks au bon endroit, et comme l'autre méthode marche impécablement,  :ange:
 
merci encore à tous les deux =)


Message édité par h4x0kz3r le 22-04-2005 à 11:15:33

---------------
People are stupid. They will believe anything they want to be true or fear to be true.
Reply

Sujets relatifs:

Leave a Replay

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