Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1750 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [php html] comment aligner 2 tableaux avec generation auto de lignes

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[php html] comment aligner 2 tableaux avec generation auto de lignes

n°267091
sakuraba
Posté le 11-12-2002 à 14:17:15  profilanswer
 

<html>
<body bgcolor="#8794C9">
<?php
    $dbhost="localhost";
    $dblogin="root";
    $dbpassword="";
    $dbname="intranet";
   
    //recupere le contenu du champs du fichier MenuSql.php  
   
    $nom     = $_GET["liste2"];
 
    //requete qui teste l existance du nom dans la base de donnée Mysql
     mysql_connect($dbhost,$dblogin,$dbpassword);mysql_selectdb($dbname);
    $sql_results=mysql_query("select util.nom as 'nom',util.prenom as 'prenom',util.fonction as 'fonction',
 site.nom as 'site',serv.nom as 'service',soci.nom as 'societe',util.mail 'mail',util.telephone 'telephone'  
 from utilisateurs util,site,service serv,societe soci  
 where util.id_site = site.id_site and util.id_service = serv.id_service and
    util.id_societe = soci.id_societe and serv.nom='$nom'" );
echo "<br><a href=menuSQL.php target=acceuil>Retour</a>";
//print "nom=$nom ";
print"<br><hr>\n";
print " <center>Liste téléphonique triée par <b>service</b> </center>\n";
print"<br><hr><br>\n";
print "<table border=2>\n";
print "<TR>\n" ;
print "
 
 <TD width=100>Nom</TD>\n
 <TD width=100>Prénom</TD>\n
 <TD width=100>Fonction</TD>\n
 <TD width=100>Téléphone</TD>\n
 <TD width=100>Site</TD>\n
 <TD width=100>Société</TD>\n
 <TD width=100>Service</TD>\n
 <TD width=100>Mail</TD>\n";
 
    print "</TR>\n";
if($sql_results==null) echo mysql_error();
while($row = mysql_fetch_array($sql_results))
{ print "<table border=1>\n";
     
 print "<TR>\n" ;
 print "
 
 <TD width=100>".$row['nom']. "</TD>\n
 <TD width=100>".$row['prenom']. "</TD>\n
 <TD width=100>".$row['fonction']. "</TD>\n
 <TD width=100>".$row['telephone']. "</TD>\n
 <TD width=100>".$row['site']. "</TD>\n
 <TD width=100>".$row['societe']. "</TD>\n
 <TD width=100>".$row['service']. "</TD>\n
 <TD width=100>".$row['mail']. "</TD>\n";
 
    print "</TR>\n";
}  
 mysql_close();
     
?>
</body>
</html>
 
mon probleme c est que  j ai les 2 tableaux qui sont plus alignés. commment je pourrais faire pour les aligner ?  
merci d'avance

mood
Publicité
Posté le 11-12-2002 à 14:17:15  profilanswer
 

n°267153
sakuraba
Posté le 11-12-2002 à 15:03:58  profilanswer
 

personne peut m aider ??  :cry:

n°267166
Sh@rdar
Ex-PhPéteur
Posté le 11-12-2002 à 15:14:24  profilanswer
 

déjà si tu ajoutais quelques </table> ça pourrait aider à fermer les tableaux...

n°267170
sakuraba
Posté le 11-12-2002 à 15:15:22  profilanswer
 

ok j essaye 2 sec

n°267173
sakuraba
Posté le 11-12-2002 à 15:17:16  profilanswer
 

c est pas ca  

n°267174
omega2
Posté le 11-12-2002 à 15:18:01  profilanswer
 

Heu, t'as la mémoire courte ou quoi là?
Rapelle toi, t'as lancé il y a très peu longtemps une autre discution sur le même sujet avec exactement le même code. (si si, première page du forum quand on prend la catégorie php )
Aller je t'aides : http://forum.hardware.fr/forum2.ph [...] subcat=393


Message édité par omega2 le 11-12-2002 à 15:19:00
n°267180
sakuraba
Posté le 11-12-2002 à 15:21:38  profilanswer
 

j avais oublié dsl mais j ai toujours le probleme

n°267190
beleg
黑社會
Posté le 11-12-2002 à 15:28:19  profilanswer
 

c un probleme de html donc balance un lien vers ta page.
et c vrai qu'omega2 a deja donné des bonnes idées pr resoudre ton probleme, apparemment, le code na pas evolué bcp, c est pas comme ca que tu vas avancer


Message édité par beleg le 11-12-2002 à 15:31:26
n°267191
omega2
Posté le 11-12-2002 à 15:28:44  profilanswer
 

Est ce qu'au moins, t'avais essayé ce que je t'avais indiqué?
Par ce qu'évidemment, si tu changes rien au code, ca marcehra pas mieux. ;)
 
Bon, le truc, c'est de :

  • suprimer le print  

"<table border=1>\n";  
qu'est dans la boucle
 
et rajouter un bgcolor="codecouleur" à l'intérieur de la balise <TR> corespondant à la ligne dont tu veux changer la couleur de fond.
 
PS : Enlève le </TABLE> que t'as rajouté à la fin de la première table si tu veux pas avoir d'autre problème d'affichage


Message édité par omega2 le 11-12-2002 à 15:29:49
n°267203
omega2
Posté le 11-12-2002 à 15:32:14  profilanswer
 

beleg a écrit :

c un probleme de html donc balance un lien vers ta page.

Son, problème, c'est qu'il ouvre et referme une table pour chaque ligne qu'il veut mettre en tableau.
Après, il s'étone que toutes les colones n'ont pas exactement la même largeur d'une ligne à l'autre ligne.
 
Pour comprendre ça, il sufit d'avoir bien lu son code php, même pas besoin du code html final pour comprendre l'origine du problème.

mood
Publicité
Posté le 11-12-2002 à 15:32:14  profilanswer
 

n°267204
beleg
黑社會
Posté le 11-12-2002 à 15:32:37  profilanswer
 

:ouch:  le table est dans la boucle  :ouch:  

n°267205
omega2
Posté le 11-12-2002 à 15:33:11  profilanswer
 

beleg a écrit :

c un probleme de html donc balance un lien vers ta page.
et c vrai qu'omega2 a deja donné des bonnes idées pr resoudre ton probleme, apparemment, le code na pas evolué bcp, c est pas comme ca que tu vas avancer

Merci. ;) :)

n°267207
beleg
黑社會
Posté le 11-12-2002 à 15:33:24  profilanswer
 

omega2 a écrit :

Son, problème, c'est qu'il ouvre et referme une table pour chaque ligne qu'il veut mettre en tableau.
Après, il s'étone que toutes les colones n'ont pas exactement la même largeur d'une ligne à l'autre ligne.
 
Pour comprendre ça, il sufit d'avoir bien lu son code php, même pas besoin du code html final pour comprendre l'origine du problème.


 
hihi les posts sentrecroisent, tas tt a fait raison .. mais je pensais pas voir ca un jour  :D

n°267215
omega2
Posté le 11-12-2002 à 15:38:31  profilanswer
 

beleg a écrit :


 
hihi les posts sentrecroisent, tas tt a fait raison .. mais je pensais pas voir ca un jour  :D  

Au bout d'un moment, tu finis par réaliser que tu peux tomber sur les problèmes les plus basique possible.
 
J'ai même vu un gas ce demander pourquoi le lien s'affichait pas .... alors qu'il y avait pas de texte entre le <A> et le </A>, si si, je l'ai vu ... dans mes propres pages suite à une erreur de nom de variable en récupérant le résultat d'une requête. Bon,  2 minutes après ca marchait très bien. lol
 
Bon, sans rire, ca fait deux ans que je fais un peu d'assistance aux utilisateurs et parfois tu vois de ces trucs ... après, tu n'est plus étoné quand tu vois des erreurs très basiques. ;)

n°267221
sakuraba
Posté le 11-12-2002 à 15:47:38  profilanswer
 

<html>
<body bgcolor="#8794C9">
<?php
    $dbhost="localhost";
    $dblogin="root";
    $dbpassword="";
    $dbname="intranet";
   
    //recupere le contenu du champs du fichier MenuSql.php  
   
    $nom     = $_GET["liste2"];
 
    //requete qui teste l existance du nom dans la base de donnée Mysql
     mysql_connect($dbhost,$dblogin,$dbpassword);mysql_selectdb($dbname);
    $sql_results=mysql_query("select util.nom as 'nom',util.prenom as 'prenom',util.fonction as 'fonction',
 site.nom as 'site',serv.nom as 'service',soci.nom as 'societe',util.mail 'mail',util.telephone 'telephone'  
 from utilisateurs util,site,service serv,societe soci  
 where util.id_site = site.id_site and util.id_service = serv.id_service and
    util.id_societe = soci.id_societe and serv.nom='$nom'" );
echo "<br><a href=menuSQL.php target=acceuil>Retour</a>";
//print "nom=$nom ";
print"<br><hr>\n";
print " <center>Liste téléphonique triée par <b>service</b> </center>\n";
print"<br><hr><br>\n";
print "<table border=2>\n";
print "<TR>\n" ;
print "
 
 <TD width=100>Nom</TD>\n
 <TD width=100>Prénom</TD>\n
 <TD width=100>Fonction</TD>\n
 <TD width=100>Téléphone</TD>\n
 <TD width=100>Site</TD>\n
 <TD width=100>Société</TD>\n
 <TD width=100>Service</TD>\n
 <TD width=100>Mail</TD>\n";
 
    print "</TR>\n";
 
 
if($sql_results==null) echo mysql_error();
while($row = mysql_fetch_array($sql_results))
{  
     
 print "<TR>\n" ;
 print "
 
 <TD width=100>".$row['nom']. "</TD>\n
 <TD width=100>".$row['prenom']. "</TD>\n
 <TD width=100>".$row['fonction']. "</TD>\n
 <TD width=100>".$row['telephone']. "</TD>\n
 <TD width=100>".$row['site']. "</TD>\n
 <TD width=100>".$row['societe']. "</TD>\n
 <TD width=100>".$row['service']. "</TD>\n
 <TD width=100>".$row['mail']. "</TD>\n";
 
    print "</TR>\n";
 print "</table>\n";
}  
 mysql_close();
     
?>
</body>
</html>
 
bien joué ca marche voici le code qui marche  
 
merci je suis un peu lent mais ca fait une semaine que je fais du php et du html  ;)

n°267223
Profil sup​primé
Posté le 11-12-2002 à 15:49:19  answer
 

ben meme moi g reussi a le faire (ss aide :o) alors hein :o

n°267225
gm_superst​ar
Appelez-moi Super
Posté le 11-12-2002 à 15:49:55  profilanswer
 

Le  print "</table>\n"; est dans la boucle... bizarre.


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
n°267226
beleg
黑社會
Posté le 11-12-2002 à 15:50:02  profilanswer
 

sors le  
 
print "</table>\n";
 
 
de ta boucle ...
 
pour un <table> que tu ouvres tu dois avoir un </table>

n°267227
sakuraba
Posté le 11-12-2002 à 15:50:16  profilanswer
 

une derniere question je sais j abuse  
 
mais comment faire pour auto ajuste mon tableau ( les colonnes ) a la taille du plus long element ?

n°267229
Profil sup​primé
Posté le 11-12-2002 à 15:50:47  answer
 

sakuraba a écrit :

une derniere question je sais j abuse  
 
mais comment faire pour auto ajuste mon tableau ( les colonnes ) a la taille du plus long element ?

ben c auto :/

n°267234
sakuraba
Posté le 11-12-2002 à 15:53:57  profilanswer
 

que ca coupe a ras du plus grand

n°267236
omega2
Posté le 11-12-2002 à 15:54:31  profilanswer
 

sakuraba a écrit :

une derniere question je sais j abuse  
 
mais comment faire pour auto ajuste mon tableau ( les colonnes ) a la taille du plus long element ?

Remplace tout tes "<TD width=100>" par des "<TD width=10%>" (ou autre porcentage)
Et si tu veux que la taille se règle vraiment de manière automatique, ne met aucun width.
 
PS : Pour chaque colone, un seul width sufit, une colone ne peut en effet avoir qu'une seule largeur à la fois. ;) Tu peux donc déjà enlever tout les width à l'intérieur de la boucle (mais pas le <TD>, bref, dans la boucle tu remplaces chaque "<TD width=100>" par des "<TD>".

n°267237
Profil sup​primé
Posté le 11-12-2002 à 15:55:12  answer
 

ben ca le fait tou seul
 
sinon tu fait <td style="width:10px"> comme ca t sur qu'il sera pas grand.
comme ca ca va le couper au raz du plus grand :)


Message édité par Profil supprimé le 11-12-2002 à 15:55:31
n°267239
Profil sup​primé
Posté le 11-12-2002 à 15:56:02  answer
 

omega2 a écrit :

Remplace tout tes "<TD width=100>" par des "<TD width=10%>" (ou autre porcentage)
Et si tu veux que la taille se règle vraiment de manière automatique, ne met aucun width.
 
PS : Pour chaque colone, un seul width sufit, une colone ne peut en effet avoir qu'une seule largeur à la fois. ;) Tu peux donc déjà enlever tout les width à l'intérieur de la boucle (mais pas le <TD>, bref, dans la boucle tu remplaces chaque "<TD width=100>" par des "<TD>".

:fou:

n°267278
sakuraba
Posté le 11-12-2002 à 16:14:38  profilanswer
 

:D j ai compris merci les gars  :love:

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [php html] comment aligner 2 tableaux avec generation auto de lignes

 

Sujets relatifs
Afficheur HTML[HTML JS ] easy pour les pros
[HTML JS] Texte qui clignote en rougeProblème Html !
[ PERL ] Fonction pour ouvrir un fichier html[HTML/tomcat] Formulaire + bouton back : pb conservation des champs...
[HTML]Comment recuperer ts les elt selectionnées d'une boîte liste?[JAVA] petite question sur les tableaux à 2 dim
appeler l'explorateur dans une page htmlHésitation sur une construction HTML
Plus de sujets relatifs à : [php html] comment aligner 2 tableaux avec generation auto de lignes


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR