begin process at 2012 05 31 01:37:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

Autre

 > 

probleme pour générer un xml


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

probleme pour générer un xml

mardi 6 janvier 2009 à 12:58:41 | probleme pour générer un xml

scoubydog

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">
  <image nom="2.jpg"/>
  <image nom="3.jpg"/>
  <image nom="4.jpg"/>
</dossier>
<dossier albumid="3">
  <image nom="5.jpg"/>
  <image nom="3.jpg"/>
</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.

Voici mon code :
<?php
$db_name = "mabase";
$connection = mysql_connect("localhost", "root", "") or die("Connexion impossible.");
$db = mysql_select_db($db_name);

$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);

 $file= fopen("results3.xml", "w");
 $_xml ="<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\r\n";
 
 if ($num != 0) {
 
/////////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 .="<image nom=\"" . $b["nom"] . ".jpg\"/>\r\n";}}
</dossier>\r\n";
}}

 fwrite($file, $_xml);
 fclose($file);
 echo "XML à été écrit.  <a href=\"results3.xml\">Voir le XML.</a>";
 } else {
 echo "No Records found";
 }
 ?>

Si il y a une autre solution je suis preneur.

Merci pour votre aide !

mardi 6 janvier 2009 à 14:16:25 | Re : probleme pour générer un xml

krolenain

Réponse acceptée !
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 .= </album>;
}

Bon en gros c'est le principe, faut juste bien que tu mettes les balises du xml correctement.
Voilou
mardi 6 janvier 2009 à 14:18:46 | Re : probleme pour générer un xml

krolenain

Réponse acceptée !
Oups tu feras gaffes, j'aurais du me relire avant.
Ligne 2 c'est mysql_query($query)
Ligne 8 c'est mysql_fetch_array($req2)
mardi 6 janvier 2009 à 15:06:49 | Re : probleme pour générer un xml

scoubydog

Ca fonctionne, merci beaucoup.



Cette discussion est classée dans : mysql, image, liste, xml, albumid


Répondre à ce message

Sujets en rapport avec ce message

Liste déroulante lié a une base MySQL [ par pi0up51 ] Je sais faire ça en asp mais pas en php, ça doit pas être bien compliqué mais si qqn peut m'aider ;)@tte et bonn' prog'pi0up51http://www.progotop.ht.s MySQL et images [ par Marneus Calgar ] SalutJ'aimerais savoir s'il est possible de stocker des images dans une table MySQL et d'y accéder depuis une page PHP. En fait, je voudrais faire un MySQL et images [ par Marneus Calgar ] SalutJ'aimerais savoir s'il est possible de stocker des images dans une table MySQL et d'y accéder depuis une page PHP. En fait, je voudrais faire un Boîtes à liste + PHP + MySql [ par olive59 ] Source en PHP avec base MySqlJ'alimente une boite à liste avec une base MySQL. Jusque là, tout va bien! (Par un SELECT * FROM ...)J'aimerais pouvoir a conseil et pb en sql avec mysql [ par herveguedj ] j'ai sur une page rech.php des liste pour le sexe sans bd et une liste qui liste les regions de ma table regionquand je fais une requete$sql="select image et GD [ par papipsycho ] salut a tous voila jai un pb donc jai un script qui marche tres bien pour cree des image et prendre des inf dans ma BDD(un script que jai recupere ici submit ne renvoyant pas valeur d'une liste déroulante dans $_POST [ par dubitoph ] ChristopheBonjour,Je suis dans une impasse. Dans le cadre d'une agence d'interim, un intérimaire peut, avant son inscription dans l'agence, avoir déjà xml et mysql [ par boin ] salut,je voudrais savoir s'il est possible d'importer un fichier xml vers une base mysql?merci d'avance.B2 problème de commandes mysql [ par juenic ] Voila je débute en php et mysql et je voulais faire un import depuis mysql vers xml, j'ai repris ce script : //Ouverture de base de données mysql_conn MySql, image et tableau [ par BirD ] Hello tout le monde, g un ptit problème:j'ai une base de donnée mysql qui contient le chemin de mon image sur le site, et depuis ma page, j'aimerais a


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales