scoubydog
Messages postés10Date d'inscriptiondimanche 9 janvier 2005StatutMembreDernière intervention 8 février 2009
-
6 janv. 2009 à 12:58
scoubydog
Messages postés10Date d'inscriptiondimanche 9 janvier 2005StatutMembreDernière intervention 8 février 2009
-
6 janv. 2009 à 15:06
Bonjour à tous, je voudrais savoir comment récupérer en xml toute la liste des images d'une base de donnée en les classant dans leurs albums respectif.
La base de donnée se compose d'une table image, avec un champ id, albumid (pour le numéro de l'album) et nom (pour le nom de l'image)
voila le résultat que j'essaye d'obtenir :
<dossier albumid="2">
</dossier>
<dossier albumid="3">
</dossier>
...(ainsi de suite pour tous les albums et images)
Pour l'instant j'arrive à récupérer toutes la liste de mes albums avec une première requête :
select DISTINCT albumid from image
Mais lorsque je rajoute une deuxieme requête dans la premiere (pour la liste des images), cela m'affiche des messages d'erreur.
$query = "select DISTINCT albumid from image ORDER BY albumid";
$query2 = "select * from image ORDER BY albumid";
$result = mysql_query($query, $connection) or die("Impossible d'interroger la base de données");
$result2 = mysql_query($query2, $connection) or die("Impossible d'interroger la base de données");
$num = mysql_num_rows($result);
/////////ma premiere boucle pour la liste d'album
while ($a = mysql_fetch_array($result)) {
{$_xml .=" <dossier albumid="" . $a["albumid"] . ""/>
///////// la ou devrait etre normalement ma deuxieme boucle pour la liste d'image de cette album
while ($b = mysql_fetch_array($result2))
{if ($b["albumid"]==$a["albumid"]){$_xml .="\r\n";}}
</dossier>\r\n";
}}
fwrite($file, $_xml);
fclose($file);
echo "XML à été écrit. Voir le XML.";
} else {
echo "No Records found";
}
?>
krolenain
Messages postés149Date d'inscriptionlundi 7 février 2005StatutMembreDernière intervention 6 février 20091 6 janv. 2009 à 14:16
Salut,
tu t'y prends mal pour tes deux requêtes, fait plutot un truc du genre
$query = "select albumid from album ORDER BY albumid";
$req = mysql_query($sql);
while($tab = mysql_fetch_array($req)){
$xml .= $tab['albumid']; //j'ai pas mis les balises xml, c'est juste pour l'exemple
$query2="select * from image WHERE albumid = '".$tab['albumid']."'";
$req2 = mysql_query($query2);
while($tab2 = mysql_fetch_array($req)){
$xml.= $tab2['imagenom'];
}
$xml .= ;
}
Bon en gros c'est le principe, faut juste bien que tu mettes les balises du xml correctement.
Voilou