Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

Mettre en forme un fichier XML récupéré dynamiquement

Aller à la page 1, 2  Suivante
Poster un nouveau sujet Imprimer cette discussion    Forum -> Administration d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
FrenchKiss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 06 Oct 2004
Messages: 187

URL permanente de ce messagePosté le : Sam Juil 16, 2005 15:35    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

Hello à tous
Je récupère un fichier XML généré par Amazon, et je souhaiterais savoir COMMENT je peux le mettre en forme.
J'ai commencé à chercher, et ce que j'ai trouvé me laisse à penser qu'il faut déclarer soit des styles CSS, soit un fichier XST, tous deux DANS le fichier XML. Or moi, le récupérant chez Amazon, je ne peux modifier celui-ci.

Qqun peut-il m'éclairer ?
 
FrenchKiss Visiter le site web du posteur
aladdin
WRInaute passionné
WRInaute passionné

Inscrit le: 29 Avr 2005
Messages: 723

URL permanente de ce messagePosté le : Sam Juil 16, 2005 16:15    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

bein suffit de créer un php qui lit ce fichier et le regenère avec en y incluant les styles necessaires ...
après il faut voir si t'a le droit de le faire ou pas Wink
 
aladdin Visiter le site web du posteur
FrenchKiss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 06 Oct 2004
Messages: 187

URL permanente de ce messagePosté le : Sam Juil 16, 2005 16:26    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

arf... j'ai aucune idée de comment faire tout ça :/
Ben je suis pas dans la mouise moi Sad
merci quand meme Smile
 
FrenchKiss Visiter le site web du posteur
playentry
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 26 Jan 2005
Messages: 209

URL permanente de ce messagePosté le : Sam Juil 16, 2005 17:20    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

Heu... Un peu hors sujet... Ou est-ce que tu l'as trouvé ce fichier xml généré par amazon ? Ça m'intréresse... Sinon, pour ce qui est de ton prob... J'en ai aucune idée... Il doit certainement exister des tutos sur le web... Rolling Eyes
 
playentry Visiter le site web du posteur
epsilon74
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 17 Mar 2004
Messages: 217
Localisation: Haute Savoie

URL permanente de ce messagePosté le : Sam Juil 16, 2005 17:52    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

le flux xml est proposé par Amazon dans les webservices.
Par contre :
"Utiliser notre plateforme Webservices nécessite des connaissances dans le domaine du développement de sites internet. Il est par exemple préférable d'avoir des connaissances sur SOAP, HTML, et Perl ou d'autres programmes de langage, comme XML ou XSLT, et d'être capable d'écrire et de travailler avec CGI scripts (ou mod_perl ou équivalent) et Network, qui facilite le transfert de données.
"
Sinon, le plus simple (mais pas le plus "propre") est de récuperer le flux, le parser et l'integrer en base de donnée. Puis tu generes tes pages depuis cette base. Mais avec des gros flux, ça peut devenir tres lourd.
Le mieux (plus propre mais beaucoup plus complexe à mon avis) est XSLT.
Cherches un peu, il y a des tuto sur le net (j'ai plus les adresses en tête) sur comment parser un flux XML.
 
epsilon74 Visiter le site web du posteur
FrenchKiss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 06 Oct 2004
Messages: 187

URL permanente de ce messagePosté le : Sam Juil 16, 2005 17:52    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

C'est leur programme Amazon Web Services
Ils te permettent de générer un XML rien qu'en entrant un ISBN, par exemple.
Je me disais que je pourrais générer une fiche livre rien qu'avec un ISBN, mais il faudrait pour cela pouvoir transformer le XML en HTML.

Et je sais pas faire :/
J'ai bien trouvé des tutos, mais il faut pour cela déclarer un fichier XST dans le XML, et comme je ne peux pas retoucher celui-ci.. et que je ne sais pas le réécrire, je suis coincé :/
 
FrenchKiss Visiter le site web du posteur
FrenchKiss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 06 Oct 2004
Messages: 187

URL permanente de ce messagePosté le : Sam Juil 16, 2005 18:02    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

espilon Smile
J'ai effectivement trouvé de tels tutos, par exemple ici :
http://www.asp-php.net/tutorial/xml/index.php

Mais ces cours supposent que tu es le propriétaire du flux XML, et que donc, tu peux y rajouter une petite ligne... Dans mon cas, je ne peux pas :/

Donc je suppose qu'effectivement, il va me falloir l'aide d'un développeur avec + de bagages que moi, parce que autant je suis capable de bidouiller, là c'est déjà plus complexe. Dommage Smile
 
FrenchKiss Visiter le site web du posteur
French Fred
WRInaute impliqué
WRInaute impliqué

Inscrit le: 12 Fév 2004
Messages: 264
Localisation: Durban - Kwazulu Natal (Afrique du sud)

URL permanente de ce messagePosté le : Sam Juil 16, 2005 18:06    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

Bonjour,

Pour appliquer une xsl, il y a deux solutions.
Soit en mode client (javascript), soit en mode server (php, asp, ...).

Pour appliquer la transformation en mode server via php, il y a les fonctions xslt de php:
http://www.php.net/xslt
http://www.php.net/manual/fr/ref.xsl.php
http://www.php.net/manual/fr/function.domxsltstylesheet-process.php

Il te reste a dompter les xslt via http://www.w3schools.com/xsl/default.asp.

Bonne continuation

FRed
 
French Fred Visiter le site web du posteur
ecocentric
WRInaute accro
WRInaute accro

Inscrit le: 10 Fév 2004
Messages: 3262
Localisation: Mons

URL permanente de ce messagePosté le : Sam Juil 16, 2005 18:12    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

C'est surement pas du grand art (le parsage du XML est ici assez... basique) mais ça marche bien.

Utilisé ici :
http://localhost/hellawaits/articles/fozzi-all-that-remains-20050505.php
ou encore
http://www.voipfr.org/boutique-voip.php (mais sans cache, donc lent).

Si vous modifiez le code, je suis bien sûr intéressé par les patchs / ajouts de fonctionnalités.

J'ai supprimé l'exemple de code. Il est disponible gratuitement sur http://www.netoscope.org/scripts.php , où seront centralisées les contributions et modifications. Le code est diffusé sous licence de logiciel libre (a priori, licence CPL).


Dernière édition par ecocentric le Mer Juil 20, 2005 12:14; édité 1 fois
 
ecocentric Visiter le site web du posteur
FrenchKiss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 06 Oct 2004
Messages: 187

URL permanente de ce messagePosté le : Sam Juil 16, 2005 18:19    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

Merci à vous deux
Ecocentric, ça me parait un peu touffu, est ce que ce serait abuser de ton amabilité que de te demander un rapide commentaire sur les fonctions qui constituent ta class ?

Parce que j'ai regardé, je vois pas comment les mettre en oeuvre (bon en mm temps, j'ai des petits yeux aujourd'hui, trop cherché / lu de trucs sur le XML, j'en peux plus).
 
FrenchKiss Visiter le site web du posteur
ecocentric
WRInaute accro
WRInaute accro

Inscrit le: 10 Fév 2004
Messages: 3262
Localisation: Mons

URL permanente de ce messagePosté le : Sam Juil 16, 2005 18:29    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

FrenchKiss a écrit:
Merci à vous deux
Ecocentric, ça me parait un peu touffu, est ce que ce serait abuser de ton amabilité que de te demander un rapide commentaire sur les fonctions qui constituent ta class ?

Parce que j'ai regardé, je vois pas comment les mettre en oeuvre (bon en mm temps, j'ai des petits yeux aujourd'hui, trop cherché / lu de trucs sur le XML, j'en peux plus).


Code:

<?php
   include "mon fichier PHP avec l'objet Amazon";

   function display_books ($aws, $affid, $asincode)
   {
      for ($i=0; $i<count($asincode); $i++)
      {
         $asin = $asincode[$i];
         $text = show_book_asin ($aws, $affid, $asin);
         if ($text!="Error")
            echo $text;
      }
   }
?>

<?php
   
   $aws = new AmazonWs;
   $aws->subscriptionID = "TA CLEF AMAZON WS";
   $affid = "TON ID AFFILIE AMAZON";
?>


Voili voilou...

display_books ($aws, $affid, $asincode) prend un objet (celui de mon post précédent, ton numéro d'affilié Amazon et un ASIN.

Il y a moyen d'obtenir une liste de bouquin à partir d'un mot-clef en utilisant "search_by_keyword" plutôt que "show_book_asin".

Je pourrais t'aider lundi si tu as un problème (j'ai d'autres codes sur le côté, il faudrait que je recentralise une fois et que je le diffuse).
 
ecocentric Visiter le site web du posteur
FrenchKiss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 06 Oct 2004
Messages: 187

URL permanente de ce messagePosté le : Sam Juil 16, 2005 18:44    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

C'est redoutable, merci beaucoup pour ton intervention, que je qualifierais de divine si j'étais porté sur la chose Smile
MERCI !
En revanche, la fonction display_books semble coincer quelque part : dès que je la mets en oeuvre, je me retrouve avec une page blanche, source vide.
Si je la supprime, et appelle directement
Code:
echo display_books ($aws, $affid,  $asincode);
, ça marche impeccable.

Au passage, j'ai constaté que niveau présentation, ça se passait DANS la classe. C'est pas joli joli tout ça Smile
Arrow je vais essayer de déméler ça, et si j'arrive à quelque chose de plus propre et plus flexible, je te le ferai savoir dans ce topic, ok ?

Merci encore et bon week end.
 
FrenchKiss Visiter le site web du posteur
ecocentric
WRInaute accro
WRInaute accro

Inscrit le: 10 Fév 2004
Messages: 3262
Localisation: Mons

URL permanente de ce messagePosté le : Sam Juil 16, 2005 19:00    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

FrenchKiss a écrit:
Au passage, j'ai constaté que niveau présentation, ça se passait DANS la classe. C'est pas joli joli tout ça Smile

En effet. J'espère que mon prof. d'info ne l'a pas vu Wink.
FrenchKiss a écrit:
Arrow je vais essayer de déméler ça, et si j'arrive à quelque chose de plus propre et plus flexible, je te le ferai savoir dans ce topic, ok ?

Bonne idée !
FrenchKiss a écrit:

Merci encore et bon week end.

De rien Wink.
 
ecocentric Visiter le site web du posteur
FrenchKiss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 06 Oct 2004
Messages: 187

URL permanente de ce messagePosté le : Sam Juil 16, 2005 20:07    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

Hop là, la même fonction, mais au format XHTML, pour permettre n'importe quelle mise en forme avec CSS.

Code:
function show_book_asin ($aws, $affid, $asin)
{
   $aws->itemtype = "Books";
   if ($aws->search_by_asin ($asin)==true)
   {
      $temp = "<div id=\"".$asin."\" class=\"livre\">";
      for ($i=0; $i<$aws->recordcount; $i++)
      {
         if ($aws->item[$i]->mediumimage_url)
            $temp .= "<div class=\"couverture\"><a href=\"http://www.amazon.fr/exec/obidos/ASIN/$asin/$affid\" target=\"blank\"><img src='" . $aws->item[$i]->mediumimage_url . "' width='" . $aws->item[$i]->mediumimage_width . "' height='" . $aws->item[$i]->mediumimage_height . "' border='0'></a></div>\n";     
            $temp .= "<div class=\"texte\"><div id=\"titre\">" . $aws->item[$i]->title . "</div><div class=\"auteur\">par " . $aws->item[$i]->author . " chez " . $aws->item[$i]->publisher . "</div>
         <div class=\"prix\">Prix : " . $aws->item[$i]->amount . " " . $aws->item[$i]->currencycode . "&nbsp;&nbsp;(<a href=\"http://www.amazon.fr/exec/obidos/ASIN/$asin/$affid\" target=\"blank\">commander</a>)</div></div>\n";
         
      }
      $temp .= "</div>";
   }
   else
      $temp = $aws->error;
   return $temp;
}
Remarquez que j'ai modifié la fonction pour qu'elle affiche la miniature de taille moyenne.

Je pense encore la modifier de mon coté, pour permettre à mes users de rajouter leurs commentaires sur le livre affiché.
 
FrenchKiss Visiter le site web du posteur
FrenchKiss
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 06 Oct 2004
Messages: 187

URL permanente de ce messagePosté le : Dim Juil 17, 2005 0:57    Sujet du message: Mettre en forme un fichier XML récupéré dynamiquement

Par contre, quand $asincode est un tableau, la fonction me renvoie une erreur, et je n'arrive pas à voir pkoi.

Code:
include "includes/libaws.php";
   
   function display_books ($aws, $affid, $asincode)
   {
      for ($i=0; $i<count($asincode); $i++)
      {
         $asin = $asincode[$i];
         $text = show_book_asin ($aws, $affid, $asin);
         if ($text!="Error") { echo $text; }
      }
   }


Code:
$aws = new AmazonWs;
   $aws->subscriptionID = "XXXXXXXXXXXX";
   $affid = "xxxxxxxxxxx";
   
   $asincode = array("2876918749","2710116332","2710112825","2100052896");
  echo show_book_asin ($aws, $affid, $asincode);
 
FrenchKiss Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Administration d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 2 - Aller à la page 1, 2  Suivante
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Définitions :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort