Bonjour à tous, alors mon soucis est que j'utilise l'api IMDB afin de récupéré les données concernant mes films et cette API me renvoi un fichier xml voici un exemple :
http://imdbapi.org/?title=matrix&type=xml&plot=simple&episode=0&limit=1&yg=0&lang=en-US&offset=&aka=simple&release=simple
Comme vous pouvez le constaté il est divisé en categorie et certaines m'interessent et d'autres non.
Donc j'ai codé un code de recupération du xml et j'ai essayé d'en retiré les données qui m'interesse mais rien à faire les données ne se mettent pas dans les variables.J'ai suivi l'explication du site php manual. Je vous joint mon code :
Comme vous le remarquez j'ai créé une classe film afin de stocker les données je la joint aussi au cas ou mais elle marche bien normalement :
Je vous remercie tous d'avance de votre aide car ca fait 1semaine que je me prend a tête dessus et je ne comprends pas pourquoi rien n'est retiré du document xml.
http://imdbapi.org/?title=matrix&type=xml&plot=simple&episode=0&limit=1&yg=0&lang=en-US&offset=&aka=simple&release=simple
Comme vous pouvez le constaté il est divisé en categorie et certaines m'interessent et d'autres non.
Donc j'ai codé un code de recupération du xml et j'ai essayé d'en retiré les données qui m'interesse mais rien à faire les données ne se mettent pas dans les variables.J'ai suivi l'explication du site php manual. Je vous joint mon code :
while(($data = mysql_fetch_assoc($result))){
$doc = new DomDocument();
//on enleve l'extension du fichier
$titre = enleveExtension($data['dc_title'], ".mkv");
//on remplace les espaces par des + pour la recherche imdb
$IMDBSearch = ereg_replace('\ ','+',$titre);
//on utilise l'api allocine pour recuperer les données de chaque film
$doc -> save('"http://imdbapi.org/?title='.$IMDBSearch.'&type=xml&plot=simple&episode=0&limit=1&yg=0&lang=fr-FR&offset=&aka=simple&release=simple"');
//echo $doc;
//$xmlFile = $doc->saveXML();
//$doc->loadXML($xmlFile);
$title = $doc->getElementsByTagName('title');
$rating = $doc->getElementsByTagName('rating');
$year = $doc->getElementsByTagName('year');
$imdb_url = $doc->getElementsByTagName('imdb_url');
$directors= $doc->getElementsByTagName('directors');
$actors = $doc->getElementsByTagName('actors');
$plot_simple = $doc->getElementsByTagName('plot_simple');
$poster = $doc->getElementsByTagName('poster');
$film = new Film($title,$rating,$year,$imdb_url,$directors,$actors,$plot_simple,$poster);
echo '<li class="span2 text-center">
<div class="thumbnail">';
$film -> title();
echo'</div>
</li>';
}
Comme vous le remarquez j'ai créé une classe film afin de stocker les données je la joint aussi au cas ou mais elle marche bien normalement :
<?php
class Film
{
private $title;
private $rating;
private $year;
private $imdb_url;
private $directors;
private $actors;
private $plot_simple;
private $poster;
function __construct($title,$rating,$year,$imdb_url,$directors,$actors,$plot_simple,$poster){
$this->title=$title;
$this->rating=$rating;
$this->year=$year;
$this->imdb_url=$imdb_url;
$this->directors=$directors;
$this->actors=$actors;
$this->plot_simple=$plot_simple;
$this->poster=$poster;
}
function poster(){
echo '<img src="http://image.toutlecine.com/photos/d/r/a/dragon-ball-serietv-01-g.jpg" class="img-rounded">';
}
function title(){
if(empty($this->title)){
echo'<p>rien dedans</p>';
return false;
}else{
echo $this->title;
return true;
}
}
}
?>
Je vous remercie tous d'avance de votre aide car ca fait 1semaine que je me prend a tête dessus et je ne comprends pas pourquoi rien n'est retiré du document xml.