Problème d'affichage

refkaben Messages postés 151 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 21 février 2006 - 24 nov. 2005 à 10:19
refkaben Messages postés 151 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 21 février 2006 - 25 nov. 2005 à 16:05
Bonjour!
J'ai un probleme au niveau de l'affichage du resultat d'une requete,
je veux afficher le resultat d'une requete sur deux colonnes:
j'ai une table domaine et une table sous domaines, j'ai deux requete avec deux boucles while qui m'affiche les domaines avec leurs sous domaines correspondants(chaque enregistrment dans une ligne), mais je veux dans chaque ligne j'aurait deux domaines avec leurs sous domaines(sur deux colonnes); j'arrive pas à mettre ça en place.
voici les deux boucles:
$req= mysql_query ("select * from domaines order by id ");
$num=mysql_num_rows($req);



while($res=mysql_fetch_array($req))
{ ?>
"><? echo $res["nom"];

?> ,
----

<? $id=$res['id'];
$sql= mysql_query (\"select * from sousdomaine where idsect='$id' order by idsous \");
$nomb=mysql_num_rows($sql);
while($rs = mysql_fetch_array($sql))
{ $idsous = $rs[idsous]; ?>----
"><? echo $rs["nomsous"];
?> ,

<? }?> <? } ?>

Merci de m'aider

8 réponses

cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
24 nov. 2005 à 10:54
Salut,

ça se fait en html la séparation en colonnes.

consulte les attributs rowspan, colspan, etc... tu verras comment modifier un tableau.

a +

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
refkaben Messages postés 151 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 21 février 2006
24 nov. 2005 à 11:57
merci!
Oui, mais je dois aussi modifier au niveau de ma requete, par exemple je récupère les domaines qui ont un id divisible par 2(à part) pour les afficher dans une colonnes et les autres dans une autre colonnes; mais je ne sais comment faire au niveau de la requete sql:
$req= mysql_query ("select * from domaines order by id ");
je veux ajouter ici where id modulo 2 =0.
Comment faire?
merci
0
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
24 nov. 2005 à 12:09
dans ta boucle :
if ( $res['id']%2 == 0 )

quoi que, je sais plus si c'est comme ca, jviens tout juste de me lever aujourd'hui :o
0
refkaben Messages postés 151 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 21 février 2006
24 nov. 2005 à 12:30
Je crois qu'il faut avoir deux résultat(deux requetes) selon l'id, pour qu'on puisse les mettre dans deux td.
Donc je veux que le modulo soit au niveau de la requete
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
24 nov. 2005 à 15:36
Mais non.
Tu récupères tout d'un coup, et tu fais le calcul via PHP.
Ensuite, tu départages toujours avec PHP.
Pourquoi se faire chier à :
Faire une requete sur la premiere partie du tableau
Faire une deuxieme requete sur l'autre partie du tableau

Alors que tu peux la faire en un seul ?!
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
24 nov. 2005 à 15:39
colonne 1, colonne 2

c'est le code basique d'un tableau ayant deux colonnes.

Donc tu peux très bien faire dans une boucle

while(machin)
{
echo '<tr>
<td>',$donnee1,'</td><td>',$donnee2,'</td>
</tr>';
}

Non ?

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
refkaben Messages postés 151 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 21 février 2006
25 nov. 2005 à 09:21
Bonjour,
oui antho ça je le sais
echo '<tr>
<td>',$donnee1,'</td><td>',$donnee2,'</td>
</tr>';
Mais comment faire pour récupérer donnée1 et donnée 2 chacune à part? alors que je l'ai récupéré dans un seul résultat(à partir de la base de données).
je pense de faire selon que res[id]%2, mais je n'arrive pas à mettre en place mon code!
Merci de m'aider!
0
refkaben Messages postés 151 Date d'inscription vendredi 19 août 2005 Statut Membre Dernière intervention 21 février 2006
25 nov. 2005 à 16:05
Voila la solution!(si quelqu'un aura besoin)

$req= mysql_query ("select * from secteur where id order by id ");
$num=mysql_num_rows($req);


$i=0;
while($res=mysql_fetch_array($req))
{


$i=$i+1; ?>
<?


$j = $i%2 ;
if($j==0){
?>


<tr><td> [soussecteur.php?id=<?php echo $res['id']; ?> <? echo $res["nomsec"]; ?> ] </td> <? } ?>


<? if($j! =0){ ?><td background="images/fonddebase.jpg" class="lien"> [soussecteur.php?id=<?php echo $res['id']; ?> <? echo $res["nomsec"]; ?>


]</td></tr> <? }} ?>
</table>
0
Rejoignez-nous