Salve a tutti. Ho un bel problema.
Ho la seguente funzione.
	
	
	
		
La funzione fa il suo dovere quando si è nel primo if . Ovvero Stampa tutta la tabella 'listini' e cliccando sulle colonne fa l'ordinamento DI TUTTA LA TABELLA, in base a quel campo.
Quando invece entro nell' else , fa il filtro grazie alla condizione di WHERE, ma CLICCANDO SULLE COLONNE MI RESTITUISCE TUTTI I RECORD DELLA TABELLA, INDISTINTAMENTE, SENZA FILTRO.
Come posso sistemarla?
Grazie!
				
			Ho la seguente funzione.
		PHP:
	
	Function VisualizzaTabellaFooter($elencotabelle,$criterioricerca,$testodescrizione){ 
INCLUDE('config.php'); 
################################### 
// Funzione che visualizza i dati contenuti nella tabella listini. Vengono visualizzati in 
   //una tabella che ha righe di colore alternato, intestazione cliccabile per cambiare 
     //  l'ordinamento dei dati, scrollabile. 
############################################################# 
$connessione = mysql_connect($db_host, $db_user,$db_password) or die("Connessione fallita !"); 
@mysql_select_db($db_name) or die("Selezione Database fallita !"); 
$testodescrizione=$_GET['testodescrizione']; 
$elencotabelle=$_GET['elencotabelle']; 
if (isset($_GET['field'])) { 
$campo = $_GET['field'] == "descrizione" ? "descrizione" : "Codice_articolo" ; 
} else { 
$campo = "Costruttore"; 
} 
if (isset($_GET['sort'])) { 
$verso = $_GET['sort'] == "desc" ? "DESC" : "ASC"; 
} else { 
$verso = "ASC"; 
} 
if (($elencotabelle=="listini" and  $testodescrizione="")or ($elencotabelle=="costruttori" or $elencotabelle=="categorie")){ 
          
//stampo la tabella listini per intero 
$sql="SELECT * from listini order by {$campo} {$verso}  "; 
$risultato_query=mysql_query($sql,$connessione)or die ("query 1 fallita"); 
                             
                            } 
else{   
    // stampo la tabella listini con il filtro WHERE Codice_articolo 
     
    $word=trim($_GET['testodescrizione']); 
    $sql1="SELECT * from listini where Codice_articolo like \"%$word%\"   order by {$campo} {$verso} 
"; 
    $risultato_query=mysql_query($sql1,$connessione)or ("Query sbagliata " .mysql_error()); 
     // controlla il risultato della query attraverso la funzione mysql_query 
} 
$res_count=mysql_num_rows($risultato_query); 
// numero totale di records 
$verso = ($verso == "ASC") ? "desc" : "asc"; 
  echo "<table width=\"747\" border=\"1\"> 
  <tr> 
    <td width=\"118\"class=\"intestazione\"width=\"223\"><a href='index.php?field=Costruttore&sort={$verso}'>Costruttore 
    </a></td> 
    <td width=\"164\" class=\"intestazione\"width=\"223\"><a href='index.php?field=Codice_articolo&sort={$verso}'>Codice_articolo</a></td> 
    <td width=\"149\" class=\"intestazione\"width=\"223\"><a href='index.php?field=descrizione&sort={$verso}'>descrizione</a></td> 
    <td width=\"141\"class=\"intestazione\"width=\"223\"><a href='index.php?field=listino&sort={$verso}'>listino</td> 
    <td width=\"141\"class=\"intestazione\"width=\"223\"><a href='index.php?field=Codice Barcode&sort={$verso}'>Codice Barcode</td> 
  </tr> 
</table>"; 
     echo" <div id=\"Layer1\"  style=\" width:747px; height:115px; overflow: auto;\"> "; 
$class = ''; 
while($riga=mysql_fetch_array($risultato_query)){ 
      
              $Costruttore=$riga["Costruttore"]; 
             $Codice_articolo=$riga["Codice_articolo"]; 
             $descrizione=$riga["descrizione"]; 
              $listino=$riga["listino"]; 
              $barcode=$riga["codice_barcode"]; 
              
             $class = $class == 'colore1' ? 'colore2' : 'colore1'; 
          
echo "<table width=\"747\" border=\"1\">"; 
             echo" <tr class= \"$class\"> "; 
    echo" <td  width=\"118\" class= \"$class\" >$Costruttore </td>"; 
    echo"<td    width=\"164\" >$Codice_articolo</td>"; 
     echo"<td    width=\"149\" >$descrizione</td>"; 
     echo"<td    width=\"141\" >$listino</td>"; 
     echo"<td    width=\"141\" >$barcode</td>"; 
    echo"</tr>"; 
         } 
         echo"</table>"; 
       echo"</div>"; 
echo"</td>"; 
  echo" </tr>"; 
echo"</body>"; 
echo"</html>"; 
}
	La funzione fa il suo dovere quando si è nel primo if . Ovvero Stampa tutta la tabella 'listini' e cliccando sulle colonne fa l'ordinamento DI TUTTA LA TABELLA, in base a quel campo.
Quando invece entro nell' else , fa il filtro grazie alla condizione di WHERE, ma CLICCANDO SULLE COLONNE MI RESTITUISCE TUTTI I RECORD DELLA TABELLA, INDISTINTAMENTE, SENZA FILTRO.
Come posso sistemarla?
Grazie!