Titre du sujet : Re: Utiliser l'api allociné dans xoopstube par seboseboss sur 25/12/2014 00:36:49
OUAH La classe mon code fonctionne, 7 requête ouf c'était long.
j'arrive pas à faire mon test grrrrrr
9a allait bien maids la ça y est ça me prend le choux, rien ne marche pour faire le test:
La ça me renvoi tjrs déja présent dans la bdd
<?php
/**
* $Id: alloinfos.php
* Module: XoopsTube
*/
include 'header.php';
include XOOPS_ROOT_PATH . '/header.php';
require_once XOOPS_ROOT_PATH . '/api-allocine/api-allocine-helper.php';
// Créer l'objet
$helper = new AlloHelper;
//Pour plus de clareté, on définit les paramètres à l'avance: le code du film, et la quantité d'informations à récupérer.
$code = 192186;
$profile = 'small';
//Ensuite, il est conseillé d'effectuer des requêtes dans un bloc try{} catch(){} pour gérer les erreurs.
try
{
// Envoi de la requête
$data = $helper->movie( $code, $profile );
//Convertir la durée en hh:mm:ss
$total = $data->runtime; //Nombre de secondes
$heure = intval(abs($total / 3600));
$total = $total - ($heure * 3600);
$minute = intval(abs($total / 60));
$total = $total - ($minute * 60);
$seconde = $total;
// Afficher les infos
echo "<div class='xoopstube_cadreblock'><b><font color=#ff7400>Code du film:</font></b> ", $data->code, "<br />n";
echo "<b><font color=#ff7400>Titre du film:</font></b> ", $data->title, "<br />n";
echo "<b><font color=#ff7400>pays:</font></b> ", $data->nationality[0]['$'], "<br />n";
echo "<b><font color=#ff7400>pays_id:</font></b> ", $data->nationality[0]['code'], "<br />n";
echo "<b><font color=#ff7400>Année de production:</font></b> ", $data->productionYear, "<br />n";
echo "<b><font color=#ff7400>Durée:</font></b> $heure H : $minute min : $seconde sec <br />n";
echo "<b><font color=#ff7400>Date de sortie:</font></b> ", $data->release['releaseDate'], "<br />n";
echo "<b><font color=#ff7400>Realisateur:</font></b> ", $data->castingShort['directors'], "<br />n";
echo "<b><font color=#ff7400>Acteur:</font></b> ", $data->castingShort['actors'], "<br />n";
echo "<b><font color=#ff7400>Genre:</font></b> ", $data->genre[0]['$'], "<br />n";
echo "<b><font color=#ff7400>Genre_id:</font></b> ", $data->genre[0]['code'], "<br />n";
echo "<b><font color=#ff7400>Synopsis:</font></b> ", $data->synopsisShort, "<br /></div>n";
// Afficher toutes les données
//print_r($data->getArray());
}
catch( ErrorException $error )
{
// En cas d'erreur
echo "Erreur n°", $error->getCode(), ": ", $error->getMessage(), PHP_EOL;
}
$code_film = $xtubemyts->addslashes(ltrim($data->code));
$title = $xtubemyts->addslashes(ltrim($data->title));
$pays_id = $xtubemyts->addslashes(ltrim($data->nationality[0]['code']));
$annee = $xtubemyts->addslashes(ltrim($data->productionYear));
$duree = $xtubemyts->addslashes(ltrim($data->runtime));
$date_sortie = $xtubemyts->addslashes(ltrim($data->release['releaseDate']));
$nom_realisateur = $xtubemyts->addslashes(ltrim($data->castingShort['directors']));
$synopsis = $xtubemyts->addslashes(ltrim($data->synopsisShort));
$nom_acteur = $xtubemyts->addslashes(ltrim($data->castingShort['actors']));
$nom_genre = $xtubemyts->addslashes(ltrim($data->genre[0]['$']));
$film_code = $xtubemyts->addslashes(ltrim($data->code));
$genre_id = $xtubemyts->addslashes(ltrim($data->genre[0]['code']));
$id_pays = $xtubemyts->addslashes(ltrim($data->nationality[0]['code']));
$nom_pays = $xtubemyts->addslashes(ltrim($data->nationality[0]['$']));
// Enregistrement des infos dans la base si le code n'existe pas déja..
$result = $xoopsDB->query(
"SELECT COUNT(*) FROM FILM WHERE code_film = " . $code_film);
list($count) = $xoopsDB->fetchRow($result);
if ($result == 0) {
$sql = 'INSERT INTO FILM'
. ' (id_film, code_film, titre, pays_id, annee, duree, date_sortie, nom_realisateur, synopsis) ';
$sql .= " VALUES ('', $code_film, '$title', $pays_id, '$annee', $duree, '$date_sortie','$nom_realisateur', '$synopsis')";
if (!$result = $xoopsDB->query($sql)) {
$_error = $xoopsDB->error() . " : " . $xoopsDB->errno();
XoopsErrorHandler_HandleError(E_USER_WARNING, $_error, __FILE__, __LINE__);
}
$sql2 = 'INSERT INTO ACTEUR'
. ' (id_acteur, nom_acteur) ';
$sql2 .= " VALUES ('', '$nom_acteur')";
if (!$result = $xoopsDB->query($sql2)) {
$_error = $xoopsDB->error() . " : " . $xoopsDB->errno();
XoopsErrorHandler_HandleError(E_USER_WARNING, $_error, __FILE__, __LINE__);
}
$sql3 = 'INSERT INTO GENRE'
. ' (id_genre, nom_genre) ';
$sql3 .= " VALUES ('', '$nom_genre')";
if (!$result = $xoopsDB->query($sql3)) {
$_error = $xoopsDB->error() . " : " . $xoopsDB->errno();
XoopsErrorHandler_HandleError(E_USER_WARNING, $_error, __FILE__, __LINE__);
}
$sql4 = 'INSERT INTO ACTEUR_FILM'
. ' (acteur_id, film_code) ';
$sql4 .= " VALUES ('', '$film_code')";
if (!$result = $xoopsDB->query($sql4)) {
$_error = $xoopsDB->error() . " : " . $xoopsDB->errno();
XoopsErrorHandler_HandleError(E_USER_WARNING, $_error, __FILE__, __LINE__);
}
$sql5 = 'INSERT INTO GENRE_FILM'
. ' (genre_id, film_id) ';
$sql5 .= " VALUES ('$genre_id', '')";
if (!$result = $xoopsDB->query($sql5)) {
$_error = $xoopsDB->error() . " : " . $xoopsDB->errno();
XoopsErrorHandler_HandleError(E_USER_WARNING, $_error, __FILE__, __LINE__);
}
$sql6 = 'INSERT INTO PAYS'
. ' (id_pays, nom_pays) ';
$sql6 .= " VALUES ('', '$nom_pays')";
if (!$result = $xoopsDB->query($sql6)) {
$_error = $xoopsDB->error() . " : " . $xoopsDB->errno();
XoopsErrorHandler_HandleError(E_USER_WARNING, $_error, __FILE__, __LINE__);
}
$sql7 = 'INSERT INTO REALISATEUR'
. ' (id_realisateur, nom_realisateur) ';
$sql7 .= " VALUES ('', '$nom_realisateur')";
if (!$result = $xoopsDB->query($sql7)) {
$_error = $xoopsDB->error() . " : " . $xoopsDB->errno();
XoopsErrorHandler_HandleError(E_USER_WARNING, $_error, __FILE__, __LINE__);
}
else {
echo '<h4>' . _MD_XTUBE_INSERT_INFOS_OK . '</h4>';
}
}else
{
echo '<h4>' . _MD_XTUBE_CODE_ALREADY_IN_BDD . '</h4>';
}
$xoopsTpl->assign('module_dir', $xoopsModule->getVar('dirname'));
include XOOPS_ROOT_PATH . '/footer.php';
?>
|