[PHP] modifier l'affichage des resultats....

modifier l'affichage des resultats.... [PHP] - Programmation

Marsh Posté le 20-02-2002 à 20:52:21    

Salut
J'ai donc finis mon script de lyrics mais au niveau de l'affichage je voudrai modifier un peu car ça s'affiche comme ça une liste et ça fait pas trop beau:
A
. Aalyiah
. Assia
B
. Blink 182
C
. Cramberries
D
. Dr Dre
E
. exemple
. exemple
F
. exemple
 
enfin si on laisse descendre cette liste jusq'ua Z c + long encore.
Je voudrai donc ranger çà en 3 colones comme ici:
http://purcity.free.fr/index.php3?p=lyrics/index
 
Je mets la ligne de commande pour afficher les artistes si ça peut aider:
 
$req_artiste=mysql_query("SELECT id,nom FROM artistes ORDER by nom" );  
while ($ligne_artiste=mysql_fetch_object($req_artiste))
{
 $var=substr($ligne_artiste->nom,0,1);if($var!=$var2)
 
  echo substr($ligne_artiste->nom,0,1).'<BR>';  
  $var2=$var;
 
echo("<B>.</B> <a href=\"artistes.php3?id=$ligne_artiste->id\">$ligne_artiste->nom</a><BR>" );
 }
 
 
merci d'avance ;)


---------------
Make Portraits, Not War!  
Reply

Marsh Posté le 20-02-2002 à 20:52:21   

Reply

Marsh Posté le 20-02-2002 à 21:16:58    

Tableau <table>..</table>
1 ligne <tr>...</tr>
3 cellules <td>..</td>
 
Dans les cellules : blabla<br>blabla<br>
 
cellule 1 : de # à F
cellule 2 : de G à O
cellule 3 : de P à Z
 
Sinon, tu peux aussi calculer le nombre de lignes totales (avec les séparateurs...) et diviser par 3 pour essayer d'harmoniser les colonnes...


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 20-02-2002 à 21:43:41    

oui mais je peux pas placer le tableau car les lettres apparaissent dynamiquement à partir de ca echo("<B>.</B> <a href=\"artistes.php3?id=$ligne_artiste->id\">$ligne_artiste->nom</a><BR>" );  
}  
 
donc je peux pas savoir c'est quelle lettrte  :(


---------------
Make Portraits, Not War!  
Reply

Marsh Posté le 21-02-2002 à 10:24:24    

j'ai essaye comme tu as dis, c'est à dire de calculer le nombre de colonnes...
Voila:
 
$query = "select $ from table";  
$result = mysql_query($query);  
$nb = mysql_num_rows($result);  
 
$par_colonne = ceil($nb/3);  
 
Il me reste à inclure ceci dans ta boucle. Si le résultat est supérieur à $par_colonne, une nouvelle colonne est créé et le palier pour la création d'une nouvelle colonne est augmenté de $nb_colonne, etc...  
 
le prob c'est que je ne sais aps ecrire ça en php...
 
HELP! :??:


---------------
Make Portraits, Not War!  
Reply

Marsh Posté le 21-02-2002 à 13:00:52    

Tu est déja capable de savoir quand tu change de lettre, non ?
 
C'est pareil pour les colonnes :
 
Au début :
echo("<TABLE>\n<TR>\n<TD>\n" );
$colnum = 1;
$nblignes = 0;
 
Dans la boucle :  
$nbligne++;
if( $nbligne >= $parcolonne )
{
   $nbligne=0;
   echo("</TD>\n<TD>\n" );
}
 
Et à la fin, on ferme la dernière colonne et le tableau
echo("</TD>\n</TR>\n</TABLE>\n" );
 
OK ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 21-02-2002 à 14:25:01    

OK
donc j'ai l'ai introduit et voila ce que ça donne
 
<?
  $query = "select $ from artistes";  
$result = mysql_query($query);  
$nb = mysql_num_rows($result);  
 
$par_colonne = ceil($nb/3);  
 
 
  echo("<TABLE>\n<TR>\n<TD>\n" );
$colnum = 1;
$nblignes = 0;
$req_artiste=mysql_query("SELECT id,nom FROM artistes ORDER by nom" );  
while ($ligne_artiste=mysql_fetch_object($req_artiste))
{
 $var=substr($ligne_artiste->nom,0,1);if($var!=$var2)
 
  echo '<br>'.'- '.'<font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#FFD16F"> '.'<B>'.substr($ligne_artiste->n
om,0,1).'</B>'.'<BR>'.�
39;<BR>';  
  $var2=$var;
   
echo ' '.("<B>.</B>  <a href=\"artistes.php3?id=$ligne_artiste->id\">$
ligne_artiste->nom</a>" ).'<BR>';
}
$nbligne++;
if( $nbligne >= $par_colonne )
{
  $nbligne=0;
  echo("</TD>\n<TD>\n" );
}
echo("</TD>\n</TR>\n</TABLE>\n" );
 ?>
 
ya erreur:
 
Warning: Supplied argument is not a valid MySQL result resource in e:\internet\création pages perso\ludo project\scriptsphp3\lyrics\lyrics.php3 on line 93


---------------
Make Portraits, Not War!  
Reply

Marsh Posté le 21-02-2002 à 15:42:45    

C'est laquelle la ligne 93 ? ? ? ?
 
Là, t'as un pb de connexion à la BDD, rien à voir avec le tableau !
 
D'autre part, je t'ai dis de mettre çà :

Code :
  1. $nbligne++;
  2. if( $nbligne >= $par_colonne )
  3. {
  4. $nbligne=0;
  5. echo("</TD>\n<TD>\n" );
  6. }


 
DANS LA BOUCLE !

 

[jfdsdjhfuetppo]--Message édité par Mara's dad--[/jfdsdjhfuetppo]


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Sujets relatifs:

Leave a Replay

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