non mi dà errori, ma ad esempio su questo script che mi dovrebbe far visualizzare i dati di un SETTORE determinato me li visualizza tutti:
Ti posto il codice:
Codice PHP:
<?
if(!isset($_FILES)) $_FILES = $HTTP_POST_FILES;
if(!isset($_SERVER)) $_SERVER = $HTTP_SERVER_VARS;
//////////////////// Inizio aggiunta
// Impostare il flag $flStrip, stripslashes() è necessario solo
// se 'magic_quotes_sybase' è 0 e get_magic_quotes_gpc() ritorna 1
$flStrip = (ini_get("magic_quotes_sybase") != true && get_magic_quotes_gpc() == true) ? true : false;
// Se addslashes() è stato applicato automaticamente,
// ripristina con stripslashes()
if ($flStrip == true) {
$settore = stripslashes($settore);
$cliente = stripslashes($cliente);
$anno = stripslashes($anno);
$descrizione = stripslashes($descrizione);
$home = stripslashes($home);
}
// Fine aggiunta////////////////
$connessione = mysql_connect("host", "user", "pwd") or die ("Connessione fallita!");
mysql_select_db("db") or die ("Selezione tabella fallita!");
// se una categoria è stata specificata, includi solo i records di quella categoria
if (strlen($settore) > 0) $whereStr = " WHERE settore = '$settore'";
else $whereStr = "";
// ottieni il numero totale dei records,
// eventualmente di una determinata categoria
$res = mysql_query("SELECT COUNT(*) FROM portfolio{$whereStr}");
$res_count = mysql_fetch_row($res);
// numero totale di records
$tot_records = $res_count[0];
$n = 0;
$colonne = 2;
$cell_width = 100 / $colonne;
// limite di risultati per pagina (secondo parametro di LIMIT)
$per_page = 4;
// numero totale di pagine richieste per visualizzare tutti i records
$tot_pages = (int) ceil($tot_records / $per_page);
// pagina corrente, se non specificata, allora pagina 1,
// se specificata ma minore di 1, allora pagina 1
// se specificata ma maggiore di $tot_pages, allora pagina $tot_pages
if (!isset($page)) $page = 1;
if ($page < 1) $page = 1;
if ($page > $tot_pages) $page = $tot_pages;
// start record, primo parametro di LIMIT
$start = ($page - 1) * $per_page;
// tipo di categoria
if (strlen($settore) > 0) $catType = $settore;
else $catType = "tutte";
////////////////menu
$settore = addslashes($settore);
$cliente = addslashes($cliente);
$anno = addslashes($anno);
$descrizione = addslashes($descrizione);
$home = addslashes($home); ?>
<tr valign="top" height="100%">
<td width="210" valign="top" rowspan="2" align="right" bgcolor="#FFFFFF" style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; padding:10px; color:#293036">[img]../img/elenco-clienti.gif[/img]
<?
// ritorna massimo $per_page records a partire da $start
// ordinati per 'id', eventualmente di una determinata categoria
//$row = mysql_query("SELECT * FROM portfolio{$whereStr} ORDER BY cliente ASC");
// numero effettivo di record ritornato, l'ultima pagina potrebbe averne meno
// di $per_page se il numero totale di records non è multiplo di $per_page
//$cnt_records = mysql_num_rows($row);
// inserisci i records
//while($riss = mysql_fetch_array($row))
// {
//$id = $riss['id'];
//echo "<a href=\"modifica.php?id=$id\" style=\"text-decoration:none;font-family:verdana,arial; font-size:11px; color:#293036\">[b]".$riss['cliente']."[/b]</a>
";
// } ?>
</td>
<?
// ritorna massimo $per_page records a partire da $start
// ordinati per 'id', eventualmente di una determinata categoria
$res = mysql_query("SELECT * FROM portfolio{$whereStr} ORDER BY id DESC LIMIT $start, $per_page");
// numero effettivo di record ritornato, l'ultima pagina potrebbe averne meno
// di $per_page se il numero totale di records non è multiplo di $per_page
$cnt_records = mysql_num_rows($res);
// inserisci i records
while($ris = mysql_fetch_array($res))
{ ?>
<td width="220" height="220" align="center" valign="middle" bgcolor="#FFFFFF">
<table width="210" height="210" border="0" cellpadding="0" cellspacing="5">
<tr>
<td width="210" height="160">
<?php
$imgID = $ris['id'];
$img = "../adminportfolio/img/" . basename($ris['imgmin']);
echo "<img src=\"$img\" border=\"0\">";
?>
</td>
</tr>
<tr>
<td width="210" height="50" valign="bottom" style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:10px; color:#293036">
[b]Cliente: [/b]<?php echo $ris['cliente']; ?>
[b]Settore: [/b]<?php echo $ris['settore']; ?>
[b]Descrizione: [/b]<?php echo $ris['descrizione'];?></td>
</tr>
</table>
</td>
<?
// incrementa il contatore
$n++;
// se il numero di colonne massimo è stato raggiunto, o se tutti i records
// sono stati visualizzati, inserire fine riga tabella
if (($n % $colonne) == 0 || $n >= $cnt_records)
{
echo " </tr>\r\n";
// se tutti i records sono stati visualizzati, inserieci fine tabella
// in caso contrario, inizia una nova riga
if ($n >= $cnt_records) echo "</tr>\r\n\r\n";
else echo "\r\n <tr>\r\n";
}
else echo "\r\n";
}
// primo e ultimo record visualizzato nella pagina corrente
$ps = $start + 1;
$pe = $start + $cnt_records;
// se è stata specificata una categoria, aggiungila all'URL dei
// links per la pagina precedente e/o successiva
if (strlen($settore) > 0) $urlCat = "&settore=$settore";
else $urlCat = "";
// calcola il valore per l'attributo 'colspan'
if ($page > 1 && $page < $tot_pages) $clspan = 3;
else $clspan = 1;
?>
<?php
/////////////////// visualizza le informazioni della pagina corrente
echo "<tr>
<td colspan=\"3\" >
<table width=\"100%\" height=\"18\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
<tr>";
// massimo numero di pagine precedenti/successive
// modificabile a piacere ... e con razionalità
$max_pages = 10;
// limitare ad un massimo di $max_pages pagine precedenti
if ($page > ($max_pages + 1)) $start = $page - $max_pages;
else $start = 1;
// limitare ad un massimo di $max_pages pagine successive
if (($tot_pages - $page) > $max_pages) $end = $page + $max_pages;
else $end = $tot_pages;
// Visualizza il link verso le pagine solo se c'è più di una pagina
if ($tot_pages > 1)
{
// Output dei tags <TR>, <TD> e <FONT> di apertura
echo "
<td align=\"center\" width=\"100%\" bgcolor=\"#ffffff\">
<font style=\"font-size:10px; font-family: verdana; color:#293036\">";
for ($n = $start ; $n <= $end ; $n++ )
{
// output di "..." che indicano ulteriori pagine precedenti oltre il limite $max_pages inferiore
if ($n == $start && $n > 1) echo "... ";
// se il numero di pagina è quello corrente, output del numero di pagina
// in caso contrario, output del link verso la relativa pagina
// in ambo i casi, lasciare un spazio di separazione in coda
if ($n == $page) echo $n . " ";
else echo "<a href=\"?page=$n{$urlCat}\" title=\"Vai alla pagina $n\">[b]
<font style=\"font-size:10px; font-family: verdana; color:#293036\">$n</font>[/b]</a> ";
// output di "..." che indicano ulteriori pagine successive oltre il limite $max_pages superiore
if ($n == $end && $n < $tot_pages) echo "...";
}
// output dei tags </FONT>, </TD> e </TR> di chiusura
echo "</font>
</td>
</tr>\r\n";
}
echo "</table></td></tr>";
///////////////////fine pagina
mysql_close();
?>