Salve a tutti, è il primo post che faccio e spero di aver azzeccato il posto giusto.
Moltissimo materiale pubblicato nel sito mi è stato utile per risolvere i vari problemi che ho riscontrato, ma ad un paio non ho trovato soluzione. Provo a spiegarvi, sperando di essere abbastanza chiara.
Sto realizzando un sito con Joomla, devo impostare due pagine esterne che permettano la gestione di una serie di materiale inserito.
La prima pagina deve creare una lista del materiale inserito, che comprende solo alcuni dati. In questa lista il titolo dev'esse un link che porterà alla seconda pagina.
Il codice che ho scritto è il seguente:
Codice PHP:
<?
//Record per pagina
$rpp = 10;
$database = &JFactory::getDBO();
//Calcola il numero totale dei record
$sql = 'SELECT recordtime, cognome_pay, nome_pay, tit_abstract, status, workshop FROM #__chronoforms_abstractins ORDER BY recordtime';
$database->setQuery($sql);
$tot = $database->loadResult();
if($tot) {
//Numero delle pagine
$np = ceil($tot / $rpp);
$sql = 'SELECT recordtime, cognome_pay, nome_pay, tit_abstract, status, workshop FROM #__chronoforms_abstractins ORDER BY recordtime';
for($pag=0; $pag < $np; $pag++) {
$database->setQuery($sql, $pag*$rpp, $rpp);
$results = $database->loadObjectList();
if(!$results) {
echo $database->getErrorMsg();
break;
}
echo
'
Pagina ',$pag+1,'
';
foreach($results as $r) {
echo
'<table width="600" border="1" cellspacing="2" cellpadding="2">
<tr>
<td width="115" class="titolo_tababst">Data</td>
<td width="485" class="testo_tababstr">',$r->recordtime,'</td>
</tr>
<tr>
<td width="115" class="titolo_tababst">Presenting Author</td>
<td width="485" class="testo_tababstr">',$r->cognome_pay,' ',$r->nome_pay,'</td>
</tr>
<tr>
<td width="115" class="titolo_tababst">Abstract Title</td>
<td width="485" class="testo_tababstr"> [url="jumi_includes/view.php?tit_abstract=$row[tit_abstract]"]',$r->tit_abstract,'[/url]</td>
</tr>
<tr>
<td width="115" class="titolo_tababst">Status</td>
<td width="485" class="testo_tababstr">',$r->status,'</td>
</tr>
<tr>
<td width="115" class="titolo_tababst">Workshop</td>
<td width="485" class="testo_tababstr">',$r->workshop,'</td>
</tr>
<tr>
<td colspan="2" class="interr"></td>
</tr>
</table>';
}
}
}
?>
Con questo codice la pagina viene creata correttamente con la rispettiva lista.
Cliccando sul titolo si dovrebbe aprire una pagina esterna, e qui "casca l'asina" cioè io.
Ho impostato la pagina in questo modo (tralasciando la parte di connessione al DB):
Codice PHP:
//Selezione abstract per titolo
$titolo=$_GET['tit_abstract'];
//Query su tutto il record
$query = "SELECT cognome_pay, nome_pay, mail_pay, istit_pay, altri_autori, tit_abstract, text_abstract FROM jos_chronoforms_abstractins WHERE tit_abstract = '$titolo'";
$results = mysql_query($query, $db) or die('query toppata');
$row = mysql_fetch_assoc($results);
if (!$results) {
return "Non ci sono dati da stampare";
}
if($results) {
echo
'<form action="" method="post" name="all_abs" id="all_abs">
<table width="600" border="1" cellspacing="2" cellpadding="2">
<tr>
<td width="150" class="titolo_tababst">Presenting Author</td>
<td width="450" class="testo_tababstr">',$results->cognome_pay,' ',$results->nome_pay,'</td>
</tr>
<tr>
<td width="150" class="titolo_tababst">E-mail</td>
<td width="450" class="testo_tababstr"><a href=mailto:$row[mail_pay]>',$r->mail_pay,'</a></td>
</tr>
</table>
</form>';
}
?>
Ora, cliccando sul titolo si apre effettivamente una pagina con il form, ma non vengono visualizzati i risultati della query.
Credo che i problemi siano principalmente qui:
- nel primo script:
Codice PHP:
<td width="485" class="testo_tababstr"> [url="jumi_includes/view.php?tit_abstract=$row[tit_abstract]"]',$r->tit_abstract,'[/url]</td>
- nel secondo:
Codice PHP:
if($results) {
echo
.......
.......
.......
<td width="450" class="testo_tababstr">',$results->cognome_pay,' ',$results->nome_pay,'</td>
Sinceramente non so come risolvere, spero che voi - decisamente molto più esperti di me - possiate indicarmi una soluzione.
Grazia fin d'ora a chi risponderà
Micaela