$nbpages_arrondi) {
switch($dest) {
case "TABLEAU":
break;
case "TABLEAUHTML":
break;
default:
echo "";
break;
}
}
// si la variable numero de page a une valeur ou est différente de 0,
// on multiplie la limite par le numero de la page passée par l'url
// sinon, pas de variable numero_page
if(isset($numero_page) || $numero_page != 0 ) {
$limite_mysql = $limite_page * $numero_page;
} else {
$limite_mysql = 0; // la limite est de 0
}
//REINITIALISATION DE LA REQUETE SQL
$sql = "SELECT notices_m.notice_id as m_id, notices_s.notice_id as s_id, section_libelle, expl_cote, expl_cb, idlender, lender_libelle , trim(concat(ifnull(notices_m.tit1,''),ifnull(notices_s.tit1,''),' ',ifnull(bulletin_numero,''), if (mention_date, concat(' (',mention_date,')') ,''))) as tit ";
$sql.= "FROM (((exemplaires LEFT JOIN notices AS notices_m ON expl_notice = notices_m.notice_id ) ";
$sql.= " LEFT JOIN bulletins ON expl_bulletin = bulletins.bulletin_id) ";
$sql.= " LEFT JOIN notices AS notices_s ON bulletin_notice = notices_s.notice_id), ";
$sql.= " docs_type, docs_section, lenders ";
$sql.= "WHERE expl_typdoc = idtyp_doc and idsection = expl_section and expl_owner = idlender ";
$sql = $sql.$critere_requete;
switch($dest) {
case "TABLEAU":
$fichier_temp_nom=str_replace(" ","",microtime());
$fichier_temp_nom=str_replace("0.","",$fichier_temp_nom);
$fname = tempnam("./temp", $fichier_temp_nom.".xls");
$workbook = &new writeexcel_workbook($fname);
$worksheet = &$workbook->addworksheet();
$row=0;
$col=0;
break;
case "TABLEAUHTML":
echo "
".$msg[1110]." : ".$msg[1113]."
";
echo "";
echo "".$msg[circ_preteur]." | ".$msg[296]." | ".$msg[circ_CB]." | ".$msg[233]." | ".$msg[234]." |
";
break;
default:
$sql = $sql." LIMIT ".$limite_mysql.", ".$limite_page;
echo "".$msg[1110]." : ".$msg[1113]."
";
echo "";
echo "".$msg[circ_preteur]." | ".$msg[296]." | ".$msg[circ_CB]." | ".$msg[233]." | ".$msg[234]." |
";
break;
}
// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die("Erreur SQL !
".$sql."
".mysql_error());
// on va scanner tous les tuples un par un
$odd_even=0;
while ($data = mysql_fetch_array($req)) {
$responsabilites = get_notice_authors(($data['m_id']+$data['s_id'])) ;
$as = array_search ("0", $responsabilites["responsabilites"]) ;
if ($as!== FALSE && $as!== NULL) {
$auteur_0 = $responsabilites["auteurs"][$as] ;
$auteur = new auteur($auteur_0["id"]);
$header_aut .= $auteur->isbd_entry;
} else {
$aut1_libelle=array();
$as = array_keys ($responsabilites["responsabilites"], "1" ) ;
for ($i = 0 ; $i < count($as) ; $i++) {
$indice = $as[$i] ;
$auteur_1 = $responsabilites["auteurs"][$indice] ;
$auteur = new auteur($auteur_1["id"]);
$aut1_libelle[]= $auteur->isbd_entry;
}
$header_aut .= implode (", ",$aut1_libelle) ;
}
$header_aut ? $auteur=$header_aut : $auteur="";
// on affiche les résultats
switch($dest) {
case "TABLEAU":
$row++;
$worksheet->write($row,1,$data['idlender']);
$worksheet->write($row,2,$data['lender_libelle']);
$worksheet->write($row,3,$data['expl_cote']);
$worksheet->write($row,4,$data['expl_cb']);
$worksheet->write($row,5,$data['tit']);
$worksheet->write($row,6,$auteur);
break;
case "TABLEAUHTML":
if ($odd_even==0) {
echo " ";
$odd_even=1;
} else if ($odd_even==1) {
echo "
";
$odd_even=0;
}
echo "".$data['idlender']." | ";
echo "".$data['lender_libelle']." | ";
echo "".$data['expl_cote']." | ";
echo "'".$data['expl_cb']." | ";
echo "".$data['tit']." | ";
echo "".$auteur." | ";
echo "
";
break;
default:
if ($odd_even==0) {
echo " ";
$odd_even=1;
} else if ($odd_even==1) {
echo "
";
$odd_even=0;
}
echo "".$data['idlender']." | ";
echo "".$data['lender_libelle']." | ";
echo "".$data['expl_cote']." | ";
echo "".$data['expl_cb']." | ";
if ($data['m_id']) echo "".$data['tit']." | ";
else echo "".$data['tit']." | ";
echo "".$auteur." | ";
echo "
";
break;
}
} // fin while
switch($dest) {
case "TABLEAU":
$workbook->close();
header("Content-Type: application/x-msexcel; name=\""."expl_owner.xls"."\"");
header("Content-Disposition: inline; filename=\""."expl_owner.xls"."\"");
$fh=fopen($fname, "rb");
fpassthru($fh);
unlink($fname);
break;
case "TABLEAUHTML":
echo "
";
break;
default:
echo "
";
//LIENS PAGE SUIVANTE et PAGE PRECEDENTE
// si le nombre de page n'est pas 0 et si la variable numero_page n'est pas définie
// dans cette condition, la variable numero_page est incrémenté et est inférieure à $nombre
if( $nbpages_arrondi != 0 && empty($numero_page)) {
print '< '.$msg[48].' '.$msg[49].' >'; // on passe la variable numero page à 1
} elseif ($nbpages_arrondi !='0' && isset($numero_page) && $numero_page < $nbpages_arrondi) {
$suivant = $numero_page + 1; // on ajoute 1 au numero de page en cours
$precedent = $numero_page - 1;
print '< '.$msg[48].''; // retour page précédente
print ''.$msg[49].' >'; //le lien pour les pages suivantes
} // dans cette condition, le lien qui sera affiché lorsque le nombre de page a été atteint
elseif ( $nbpages_arrondi !='0' && isset($numero_page) && $numero_page >= $nbpages_arrondi ) {
$precedent = $numero_page - 1;
print '< '.$msg[48].''; // retour page précédente
}
echo "
";
break;
}
mysql_free_result ($req);
?>