comment aligner 2 tableaux avec generation auto de lignes [php html] - PHP - Programmation
Marsh Posté le 11-12-2002 à 15:14:24
déjà si tu ajoutais quelques </table> ça pourrait aider à fermer les tableaux...
Marsh Posté le 11-12-2002 à 15:18:01
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
Marsh Posté le 11-12-2002 à 15:28:19
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
Marsh Posté le 11-12-2002 à 15:28:44
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 :
"<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
Marsh Posté le 11-12-2002 à 15:32:14
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.
Marsh Posté le 11-12-2002 à 15:33:11
beleg a écrit : c un probleme de html donc balance un lien vers ta page. |
Merci.
Marsh Posté le 11-12-2002 à 15:33:24
omega2 a écrit : Son, problème, c'est qu'il ouvre et referme une table pour chaque ligne qu'il veut mettre en tableau. |
hihi les posts sentrecroisent, tas tt a fait raison .. mais je pensais pas voir ca un jour
Marsh Posté le 11-12-2002 à 15:38:31
beleg a écrit : |
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.
Marsh Posté le 11-12-2002 à 15:47:38
<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
Marsh Posté le 11-12-2002 à 15:49:55
Le print "</table>\n"; est dans la boucle... bizarre.
Marsh Posté le 11-12-2002 à 15:50:02
sors le
print "</table>\n";
de ta boucle ...
pour un <table> que tu ouvres tu dois avoir un </table>
Marsh Posté le 11-12-2002 à 15:50:16
une derniere question je sais j abuse
mais comment faire pour auto ajuste mon tableau ( les colonnes ) a la taille du plus long element ?
Marsh Posté le 11-12-2002 à 15:50:47
sakuraba a écrit : une derniere question je sais j abuse |
ben c auto
Marsh Posté le 11-12-2002 à 15:54:31
sakuraba a écrit : une derniere question je sais j abuse |
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>".
Marsh Posté le 11-12-2002 à 15:55:12
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
Marsh Posté le 11-12-2002 à 15:56:02
omega2 a écrit : Remplace tout tes "<TD width=100>" par des "<TD width=10%>" (ou autre porcentage) |
Marsh Posté le 11-12-2002 à 14:17:15
<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