2 while en 1

WRInaute impliqué
Bonjours, je me demande si il est possible de rassembler ces 2 codes, qui sont quasiment identique. Il y a juste le type de la requete qui change.

Merci

Code:
$query = doquery("SELECTid FROM {{table}} WHERE type=2", "items");

while ($queryrow = mysql_fetch_array($query)) {

echo $queryrow['id'];

}

$query2 = doquery("SELECTid FROM {{table}} WHERE type=3", "items");

while ($queryrow2 = mysql_fetch_array($query2)) {

echo $queryrow2['id'];

}
 
WRInaute accro
Je sui nul en codage donc ma solution sera surement pourrie. je préviens par avance :)

Code:
$query = doquery("SELECTid, type FROM {{table}} WHERE type IN ('2', '3') ", "items");

while ($queryrow = mysql_fetch_array($query))
{
if  ($queryrow['id'] == '2')
{
echo $queryrow['id'];
} else {
if  ($queryrow['id'] == '3')
{
echo $queryrow2['id'];
}
}
}

J'avais prévenu :)
 
WRInaute impliqué
Code:
$query = doquery("SELECTid, type FROM {{table}} WHERE type IN ('2', '3') ", "items");

while ($queryrow = mysql_fetch_array($query))
    echo $queryrow['id'];
 
WRInaute impliqué
Suite

Ok d'accord merci. J'ai un dernier problème à régler pour un seconde while.

En fait je veux qu'au début de la liste des objets de type 2, et de type 3 ca affiche un titre.

Donc j'ai fais comme ceci, et ca fonctionne, mais je me demande si il y a pas plus simple :
Code:
$query = doquery("SELECT id, type FROM {{table}} WHERE id='1' OR id='1'  OR id='4'  OR id='6' OR id='10'", "items");	

$list1 = '';
$list2 = '';
$titre1 = '';
$titre2 = '';

while ($queryrow = mysql_fetch_array($query)) {

if($queryrow['type'] == 2){

$titre1 = 'Titre type 2'; //titre pour les type 2
$list1 = $queryrow['id']; 
}

if($queryrow['type'] == 3){

$titre2 = 'Titre type 3'; //titre pour les type 3
$list2 = $queryrow['id'];
}

}

echo $titre1.$list1.$titre2.$list2;  //affichage
 
WRInaute accro
euh ben je vois pas la différence... faut juste tout coller dans des area ou faire les print en classant par type dès la première requete
 
Discussions similaires
Haut