Non ho mai visto una session db execute...
Comunque il problema stà nel ciclo while.
Tu hai estratto con il ciclo while tutti i dati ma poi non li scrivi da nessuna parte.
Li richiami fuori dal ciclo e così non serve a nulla.
Codice PHP:
$result=$_SESSION['db']->execute("SELECT bi_idrichie,re_richieste_bw,re_articoli_ricev,re_richieste_ln,re_articoli_forni,(re_articoli_ricev) - (re_articoli_forni) AS differenza_ricev_forni FROM report_biblio WHERE bi_idforni=".$_SESSION['biblio']->bi_id." AND re_anno=$year ");
echo "<h3>Scambi tra biblioteche nell'anno $year</h3>
";
echo "<table class=\"report_table\">";
//qui credo sia sbagliato. while ($row=$_SESSION['db']->fetch($result)) Devi mettere come segue
while ($row=mysql_fetch_array($result))
{
//Qui è inutile che crei un array.Togli le quadre. Tanto ad ogni ciclo rinnova i valori e sei a posto.
$array1=$row["bi_idrichie"];
$array2=$row["re_richieste_bw"];
$array3=$row["re_articoli_ricev"];
$array4=$row["re_richieste_ln"];
$array5=$row["re_articoli_forni"];
$array6=$row["differenza_ricev_forni"];
//qui al posto di array dovrai richiamare tutti i valori uno per uno.
echo " <tr><th>Biblioteca richiedente:</td></th><td>".$array1."</td></tr>";
echo " <tr><th>Numero Richieste di Borrowing</th><td>".$array2."</td></tr>";
echo " <tr><th>Numero Articoli Ricevuti</th><td>".$array3."</td></tr>";
echo " <tr><th>Numero Richieste di Lending</th><td>".$array4."</td></tr>";
echo " <tr><th>Numero Articoli Forniti</th><td>".$array5."</td></tr>";
echo " <tr><th>Differenza Articoli</th><td>".$array6."</td></tr>";
}
echo "</table>";
Togli la creazione di array dentro al ciclo, metti dentro il ciclo la tabella e sei a posto.
Così com'è viene fatta male. Dovresti fare prima tutta la prima riga con tutti i campi scritti, poi sotto crei una riga che poi viene ripetuta per ogni record trovato.
Potresti anche usare un ciclo for.
Conti i record che vengono creati dalla query, fai il tuo ciclo while con la creazione di un array e poi con un ciclo for estrai uno per uno tutti gli array. Meglio il ciclo while comunque.