aggiungere la paginazione

searedone

Utente Attivo
11 Giu 2010
508
0
0
Ciao a tutti...

provo e riprovo ad aggiungere la paginazione a questo script ma non ci riesco :(

c'è qualcuno che può' aiutarmi please

PHP:
<?php
require "db_connect.php";

// recuperiamo il valore ricerca inviato con get

$ricerca = $_GET['ricerca'];

// vediamo se è stato inviato, e quindi uguale a ok

if ( $ricerca == 'ok' ) {

// recuperiamo ora cerca inviato con post

$cerca = $_POST['cerca'];

// vediamo se è stato compilato il campo

if ( $cerca == TRUE && $cerca != "" ) {

// ora vediamo se supera i tre caratteri

if ( strlen($cerca) >= 3 ) {

// ora depuriamo la stringa da cercare sul database 

$cerca =  mysql_escape_string(stripslashes($cerca)); 

// ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi

$query = "SELECT * FROM
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id )
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id)
     INNER JOIN citta ON (annunci.cittaid=citta.id)
     INNER JOIN cliente ON (annunci.clienteid=cliente.id)
     INNER JOIN users ON (annunci.user_id=users.id)
    
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR via LIKE '%$cerca%'  "; 

$risultato = mysql_query($query) or die (mysql_error()); 

$risposta = mysql_query($query) or die ("Utilizza termini più specifici!");

$dentro_la_query= mysql_fetch_assoc($risposta);

if ( $dentro_la_query == TRUE ) {

while($row= mysql_fetch_assoc($risultato)) { 
$click_annuncio = $row['click_annuncio'];
$id_annunci = $row['id_annunci'];
$user_id = $row['id'];
 
  $descrizione = substr($row['descrizione'], 0, 50); 
  $mq = $row['mq'];
  $prezzo = $row['prezzo'];
  $tipologia = $row['tipologia'];
    $sigla = $row['sigla'];
  
  $name = $row['name'];
   $locali = $row['locali'];
  $via = $row['via'];
  $citta = $row['citta'];
  $username = $row['username'];
  $email = $row['email'];
   $condizioni = $row['condizioni'];
    $regione = $row['regione'];
     $tipo = $row['tipo'];
      $condizioni = $row['condizioni'];
       $logo_cliente = $row['logo_cliente'];
         
  
   $nome_file = $row['nome_file'];
  $tipo_file = $row['tipo_file'];
  $dati_file = $row['dati_file'];
  
  $nome_file_vero = $row['nome_file_vero'];
  $tipo_file = $row['tipo_file'];
  $dati_file = $row['dati_file'];
  







// stampiamo i nostri dati 


 echo" <table width='100%'>";
  echo" <tr>";
   echo" <p class='three'><td colspan='3'> <a href=\"rannunci.php?id=$id_annunci\"/>$via,$citta,$name,$sigla,$regione</a></td>";
 echo" </tr>";
 echo" <tr>";
  echo"  <td width='14%' bgcolor='#f4f9fd'> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$id_annunci' name='nome_file'  alt'' width='200' height='154'  /></a></td>";
  echo"  <td width='45%' bgcolor='#f4f9fd'><table width='100%'>";
   echo"   <tr>";
    echo"    <td>$descrizione</td>";
    echo"  </tr>";
    echo"  <tr>";
      echo"  <td>$id_annunci</td>";
echo"</tr>";
 echo"     <tr>";
    echo"    <td>&nbsp;</td>";
    echo"  </tr>";
   echo" </table></td>";
  echo"  <td width='31%' bgcolor='#f4f9fd'>Prezzo:$prezzo<br />Mq:$mq<br />Locali:$locali</p> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$user_id' name='nome_file_vero' width='150' height='40'/></a></td>";
  echo"</tr>";
echo"</table>";


} 

} else {

echo "Al momento non ci sono annunci in questa provincia.<br />
vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>";

}


} else {

echo "Devi inserire almeno 3 caratteri";

}

} else {

echo "Non hai compilato il modulo ricerca";

}

}

?>
 
Ciao Borgo,
grazie mille avevo già visto questi due articoli e tra l'altro sto facendo anche da qualche gg il corso di mrwebmaster ( fantastico lo consiglio ) ma non essendo ancora bravo bravo
non riesco ad aggiungerla a quello script ...

lo script che ho postato è uno script che serve come motore di ricerca, ho già una paginazione te la posto


PHP:
<?php 
// definiamo una costante per la pagina corrente 
define("SELF", $_SERVER['PHP_SELF']); 

// definiamo la classe 
class Paging 
{ 
// definiamo la pagina di partenza 
function paginaIniziale($max_row) 
{ 
if ((!isset($_GET['p'])) || ($_GET['p'] == "1")) 
{ 
$parti_da = 0; 
$_GET['p'] = 1; 
}else{ 
$parti_da = ($_GET['p']-1) * $max_row; 
} 
return $parti_da; 
} 

// contiamo le pagine e stabiliamo quanti records devono essere impaginati  
function contaPagine($conta, $max_row) 
{ 
$pgg = (($conta % $max_row) == 0) ? $conta / $max_row : floor($conta / $max_row) + 1; 
return $pgg; 
} 

// mostriamo l'elenco delle pagine 
function listaPagine($p_corrente, $pgg) 
{ 
$listapgg = ""; 
if (($p_corrente != 1) && ($p_corrente)) 
{ 
$listapgg .= " <a href=\"".SELF."?p=1\">Prima pag.</a> "; 
} 
if (($p_corrente-1) > 0) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".($p_corrente-1)."\"><</a> "; 
} 
for ($i=1; $i<=$pgg; $i++) 
{ 
if ($i == $p_corrente) 
{ 
$listapgg .= "<b>".$i."</b>"; 
}else{ 
$listapgg .= "<a href=\"".SELF."?p=".$i."\">".$i."</a>"; 
} 
$listapgg .= " "; 
} 
if (($p_corrente+1) <= $pgg) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".($p_corrente+1)."\">></a> "; 
} 
if (($p_corrente != $pgg) && ($pgg != 0)) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".$pgg."\">Ultima pag.</a> "; 
} 
$listapgg .= "</td>\n"; 
return $listapgg; 
} 

// permettiamo la navigazione per pagine precedenti e successive 
function precedenteSuccessiva($p_corrente, $pgg) 
{ 
$impaginazione = ""; 
if (($p_corrente-1) <= 0) 
{ 
$impaginazione .= "Precedente"; 
}else{ 
$impaginazione .= "<a href=\"".SELF."?p=".($p_corrente-1)."\">Pag. precedente</a>"; 
} 
$impaginazione .= " | "; 
if (($p_corrente+1) > $pgg) 
{ 
$impaginazione .= "Prossima"; 
}else{ 
$impaginazione .= "<a href=\"".SELF."?p=".($p_corrente+1)."\">Prossima pag.</a>"; 
} 
return $impaginazione; 
} 
} 
?>

ma non capisco come posso inserirla nello script di prima :(

mannaggia ho ancora molte lacune :(
 
ciao
postresti scriverla nella stessa pagina, ma meglio in un file (es.) paginazione.php e poi fare l'include_once o il require_once
 
ciao..

il file che ti ho postato è già in un require paginazione :(

ma non riesco a capire come posso aggiungerla qui :


PHP:
<?php 
require "db_connect.php"; 

require "pagination.php";

// recuperiamo il valore ricerca inviato con get 

$ricerca = $_GET['ricerca']; 

// vediamo se è stato inviato, e quindi uguale a ok 

if ( $ricerca == 'ok' ) { 

// recuperiamo ora cerca inviato con post 

$cerca = $_POST['cerca']; 

// vediamo se è stato compilato il campo 

if ( $cerca == TRUE && $cerca != "" ) { 

// ora vediamo se supera i tre caratteri 

if ( strlen($cerca) >= 3 ) { 

// ora depuriamo la stringa da cercare sul database  

$cerca =  mysql_escape_string(stripslashes($cerca));  

// ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi 

$query = "SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
     
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR via LIKE '%$cerca%'  ";  

$risultato = mysql_query($query) or die (mysql_error());  

$risposta = mysql_query($query) or die ("Utilizza termini più specifici!"); 

$dentro_la_query= mysql_fetch_assoc($risposta); 

if ( $dentro_la_query == TRUE ) { 

while($row= mysql_fetch_assoc($risultato)) {  
$click_annuncio = $row['click_annuncio']; 
$id_annunci = $row['id_annunci']; 
$user_id = $row['id']; 
  
  $descrizione = substr($row['descrizione'], 0, 50);  
  $mq = $row['mq']; 
  $prezzo = $row['prezzo']; 
  $tipologia = $row['tipologia']; 
    $sigla = $row['sigla']; 
   
  $name = $row['name']; 
   $locali = $row['locali']; 
  $via = $row['via']; 
  $citta = $row['citta']; 
  $username = $row['username']; 
  $email = $row['email']; 
   $condizioni = $row['condizioni']; 
    $regione = $row['regione']; 
     $tipo = $row['tipo']; 
      $condizioni = $row['condizioni']; 
       $logo_cliente = $row['logo_cliente']; 
          
   
   $nome_file = $row['nome_file']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   
  $nome_file_vero = $row['nome_file_vero']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   







// stampiamo i nostri dati  


 echo" <table width='100%'>"; 
  echo" <tr>"; 
   echo" <p class='three'><td colspan='3'> <a href=\"rannunci.php?id=$id_annunci\"/>$via,$citta,$name,$sigla,$regione</a></td>"; 
 echo" </tr>"; 
 echo" <tr>"; 
  echo"  <td width='14%' bgcolor='#f4f9fd'> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$id_annunci' name='nome_file'  alt'' width='200' height='154'  /></a></td>"; 
  echo"  <td width='45%' bgcolor='#f4f9fd'><table width='100%'>"; 
   echo"   <tr>"; 
    echo"    <td>$descrizione</td>"; 
    echo"  </tr>"; 
    echo"  <tr>"; 
      echo"  <td>$id_annunci</td>"; 
echo"</tr>"; 
 echo"     <tr>"; 
    echo"    <td>&nbsp;</td>"; 
    echo"  </tr>"; 
   echo" </table></td>"; 
  echo"  <td width='31%' bgcolor='#f4f9fd'>Prezzo:$prezzo<br />Mq:$mq<br />Locali:$locali</p> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$user_id' name='nome_file_vero' width='150' height='40'/></a></td>"; 
  echo"</tr>"; 
echo"</table>"; 


}  

} else { 

echo "Al momento non ci sono annunci in questa provincia.<br /> 
vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>"; 

} 


} else { 

echo "Devi inserire almeno 3 caratteri"; 

} 

} else { 

echo "Non hai compilato il modulo ricerca"; 

} 

} 

?>

Ma suppongo che devo aggiungere qualcosa all'interno di questo script e non capisco cosa .....
 
Borgo ho provato così ..

funziona ma non mi crea le altre pagine .....

puoi darci un'occhiata ???

cerca.php

PHP:
<?php
require "db_connect.php";
require "paginazione.php";

class MySQL 
{  
function MySQL()  
{  
require "db_connect.php";
}  
}  

$data = new MySQL(); 

// recuperiamo il valore ricerca inviato con get

$ricerca = $_GET['ricerca'];

// vediamo se è stato inviato, e quindi uguale a ok

if ( $ricerca == 'ok' ) {

// recuperiamo ora cerca inviato con post

$cerca = $_POST['cerca'];

// vediamo se è stato compilato il campo

if ( $cerca == TRUE && $cerca != "" ) {

// ora vediamo se supera i tre caratteri

if ( strlen($cerca) >= 3 ) {

// ora depuriamo la stringa da cercare sul database 

$cerca =  mysql_escape_string(stripslashes($cerca)); 




// istanziamo la classe per l'impaginazione 
$p = new Paging; 

// numero massimo di risultati per pagina 
$max = 4; 

// identifichiamo la pagina da cui iniziare la numerazione 
$inizio = $p->paginaIniziale($max); 
// ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi



$query = ("SELECT * FROM
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id )
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id)
     INNER JOIN citta ON (annunci.cittaid=citta.id)
     INNER JOIN cliente ON (annunci.clienteid=cliente.id)
     INNER JOIN users ON (annunci.user_id=users.id)
    
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR via LIKE '%$cerca%' ORDER BY 'id_annunci' DESC LIMIT ".$inizio.",".$max); 

$risultato = mysql_query($query) or die (mysql_error()); 

$risposta = mysql_query($query) or die ("Utilizza termini più specifici!");

$dentro_la_query= mysql_fetch_assoc($risposta);
$count = mysql_num_rows($query);

$pagine = $p->contaPagine($count, $max); 


if ( $dentro_la_query == TRUE ) {

while($row= mysql_fetch_assoc($risultato)) { 
$click_annuncio = $row['click_annuncio'];
$id_annunci = $row['id_annunci'];
$user_id = $row['id'];
 
  $descrizione = substr($row['descrizione'], 0, 50); 
  $mq = $row['mq'];
  $prezzo = $row['prezzo'];
  $tipologia = $row['tipologia'];
    $sigla = $row['sigla'];
  
  $name = $row['name'];
   $locali = $row['locali'];
  $via = $row['via'];
  $citta = $row['citta'];
  $username = $row['username'];
  $email = $row['email'];
   $condizioni = $row['condizioni'];
    $regione = $row['regione'];
     $tipo = $row['tipo'];
      $condizioni = $row['condizioni'];
       $logo_cliente = $row['logo_cliente'];
         
  
   $nome_file = $row['nome_file'];
  $tipo_file = $row['tipo_file'];
  $dati_file = $row['dati_file'];
  
  $nome_file_vero = $row['nome_file_vero'];
  $tipo_file = $row['tipo_file'];
  $dati_file = $row['dati_file'];
  







// stampiamo i nostri dati 


 echo" <table width='100%'>";
  echo" <tr>";
   echo" <p class='three'><td colspan='3'> <a href=\"rannunci.php?id=$id_annunci\"/>$via,$citta,$name,$sigla,$regione</a></td>";
 echo" </tr>";
 echo" <tr>";
  echo"  <td width='14%' bgcolor='#f4f9fd'> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$id_annunci' name='nome_file'  alt'' width='200' height='154'  /></a></td>";
  echo"  <td width='45%' bgcolor='#f4f9fd'><table width='100%'>";
   echo"   <tr>";
    echo"    <td>$descrizione</td>";
    echo"  </tr>";
    echo"  <tr>";
      echo"  <td>$id_annunci</td>";
echo"</tr>";
 echo"     <tr>";
    echo"    <td>&nbsp;</td>";
    echo"  </tr>";
   echo" </table></td>";
  echo"  <td width='31%' bgcolor='#f4f9fd'>Prezzo:$prezzo<br />Mq:$mq<br />Locali:$locali</p> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$user_id' name='nome_file_vero' width='150' height='40'/></a></td>";
  echo"</tr>";
echo"</table>";


} 

} else {

echo "Al momento non ci sono annunci in questa provincia.<br />
vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>";

}


} else {

echo "Devi inserire almeno 3 caratteri";

}

} else {

echo "Non hai compilato il modulo ricerca";

}

}

//mostriamo le pagine 
$lista = $p->listaPagine($_GET['p'], $pagine); 
echo $lista . "<br>"; 

//mostriamo il navigatore Precedente/Successiva 
$navigatore = $p->precedenteSuccessiva($_GET['p'], $pagine); 
echo $navigatore; 


?>

paginazione.php

PHP:
<?php 
// definiamo una costante per la pagina corrente 
define("SELF", $_SERVER['PHP_SELF']); 

// definiamo la classe 
class Paging 
{ 
// definiamo la pagina di partenza 
function paginaIniziale($max_row) 
{ 
if ((!isset($_GET['p'])) || ($_GET['p'] == "1")) 
{ 
$parti_da = 0; 
$_GET['p'] = 1; 
}else{ 
$parti_da = ($_GET['p']-1) * $max_row; 
} 
return $parti_da; 
} 

// contiamo le pagine e stabiliamo quanti records devono essere impaginati  
function contaPagine($conta, $max_row) 
{ 
$pgg = (($conta % $max_row) == 0) ? $conta / $max_row : floor($conta / $max_row) + 1; 
return $pgg; 
} 

// mostriamo l'elenco delle pagine 
function listaPagine($p_corrente, $pgg) 
{ 
$listapgg = ""; 
if (($p_corrente != 1) && ($p_corrente)) 
{ 
$listapgg .= " <a href=\"".SELF."?p=1\">Prima pag.</a> "; 
} 
if (($p_corrente-1) > 0) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".($p_corrente-1)."\"><</a> "; 
} 
for ($i=1; $i<=$pgg; $i++) 
{ 
if ($i == $p_corrente) 
{ 
$listapgg .= "<b>".$i."</b>"; 
}else{ 
$listapgg .= "<a href=\"".SELF."?p=".$i."\">".$i."</a>"; 
} 
$listapgg .= " "; 
} 
if (($p_corrente+1) <= $pgg) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".($p_corrente+1)."\">></a> "; 
} 
if (($p_corrente != $pgg) && ($pgg != 0)) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".$pgg."\">Ultima pag.</a> "; 
} 
$listapgg .= "</td>\n"; 
return $listapgg; 
} 

// permettiamo la navigazione per pagine precedenti e successive 
function precedenteSuccessiva($p_corrente, $pgg) 
{ 
$impaginazione = ""; 
if (($p_corrente-1) <= 0) 
{ 
$impaginazione .= "Precedente"; 
}else{ 
$impaginazione .= "<a href=\"".SELF."?p=".($p_corrente-1)."\">Pag. precedente</a>"; 
} 
$impaginazione .= " | "; 
if (($p_corrente+1) > $pgg) 
{ 
$impaginazione .= "Prossima"; 
}else{ 
$impaginazione .= "<a href=\"".SELF."?p=".($p_corrente+1)."\">Prossima pag.</a>"; 
} 
return $impaginazione; 
} 
} 
?>
 
ciao
intanto dovi avere due SELECT, comunque prova così (i commenti con gli asterisci sono quelli che ho aggiunto io)
PHP:
<?php 
require "db_connect.php"; 
require "pagination.php";
// recuperiamo il valore ricerca inviato con get 
$ricerca = $_GET['ricerca']; 
// vediamo se è stato inviato, e quindi uguale a ok 
if ( $ricerca == 'ok' ) { 
	// recuperiamo ora cerca inviato con post 
	$cerca = $_POST['cerca']; 
	// vediamo se è stato compilato il campo 
	if ( $cerca == TRUE && $cerca != "" ) { 
		// ora vediamo se supera i tre caratteri 
		if ( strlen($cerca) >= 3 ) { 
			// ora depuriamo la stringa da cercare sul database	
			$cerca =  mysql_escape_string(stripslashes($cerca));
			//****ISTANZI LA CLASSE PAGING******
			$p = new Paging;
			$max = 10;//****numero massimo di record per pagina
			$inizio = $p->paginaIniziale($max);// identifichiamo la pagina da cui iniziare la numerazione
			//****per vedere quanti record estrarrai usi la querry che poi userai per visualizzare I° query
			$q = "SELECT * FROM 
    		annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
    		INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     		INNER JOIN citta ON (annunci.cittaid=citta.id) 
     		INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     		INNER JOIN users ON (annunci.user_id=users.id) 
   			WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR via LIKE '%$cerca%'  ";
			//******quanti recordi 
			$count =mysql_num_rows(mysql_query($q));
			$pagine = $p->contaPagine($count, $max);//numero di pagine
			//******creo il LIMIT
			$lim=" LIMIT $inizio, $max";
			//**********
			// ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi
			//******concatenando alla query precedente il limit II° query
			$query = $q.$lim; 
			$risultato = mysql_query($query) or die (mysql_error());  
			$risposta = mysql_query($query) or die ("Utilizza termini più specifici!"); 
			$dentro_la_query= mysql_fetch_assoc($risposta); 
			if ( $dentro_la_query == TRUE ) { 
				//******porta fuori dal while il tag <table>
				echo" <table width='100%'>";
				while($row= mysql_fetch_assoc($risultato)) {  
					$click_annuncio = $row['click_annuncio']; 
					$id_annunci = $row['id_annunci']; 
					$user_id = $row['id']; 
					$descrizione = substr($row['descrizione'], 0, 50);  
  					$mq = $row['mq']; 
  					$prezzo = $row['prezzo']; 
  					$tipologia = $row['tipologia']; 
   	 				$sigla = $row['sigla']; 
   					$name = $row['name']; 
   					$locali = $row['locali']; 
  					$via = $row['via']; 
  					$citta = $row['citta']; 
  					$username = $row['username']; 
  					$email = $row['email']; 
   					$condizioni = $row['condizioni']; 
   					$regione = $row['regione']; 
     				$tipo = $row['tipo']; 
      				$condizioni = $row['condizioni']; 
       				$logo_cliente = $row['logo_cliente']; 
   					$nome_file = $row['nome_file']; 
  					$tipo_file = $row['tipo_file']; 
  					$dati_file = $row['dati_file']; 
  					$nome_file_vero = $row['nome_file_vero']; 
  					$tipo_file = $row['tipo_file']; 
  					$dati_file = $row['dati_file']; 
					// stampiamo i nostri dati   
  					echo" <tr>"; 
   					echo" <p class='three'><td colspan='3'> <a href=\"rannunci.php?id=$id_annunci\"/>$via,$citta,$name,$sigla,$regione</a></td>"; 
 					echo" </tr>"; 
 					echo" <tr>"; 
  					echo"  <td width='14%' bgcolor='#f4f9fd'> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$id_annunci' name='nome_file'  alt'' width='200' height='154'  /></a></td>"; 
  					echo"  <td width='45%' bgcolor='#f4f9fd'><table width='100%'>"; 
   					echo"   <tr>"; 
    				echo"    <td>$descrizione</td>"; 
    				echo"  </tr>"; 
    				echo"  <tr>"; 
      				echo"  <td>$id_annunci</td>"; 
					echo"</tr>"; 
 					echo"     <tr>"; 
    				echo"    <td>&nbsp;</td>"; 
    				echo"  </tr>"; 
   					echo" </td>"; 
  					echo"  <td width='31%' bgcolor='#f4f9fd'>Prezzo:$prezzo<br />Mq:$mq<br />Locali:$locali</p> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$user_id' name='nome_file_vero' width='150' height='40'/></a></td>"; 
  					echo"</tr>"; 
				}
				//****riga per la paginazione
				echo "<tr><td colspan=\"4\">";//***ho messo 4 ma devi verificare quante colonne hai
				$lista = $p->listaPagine($_GET['p'], $pagine);
				echo $lista;
				echo "</td></tr>";
				echo"</table>";//********</table> fuori dal wihle
			} else { 
				echo "Al momento non ci sono annunci in questa provincia.<br /> 
				vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>"; 
			} 
		} else { 
			echo "Devi inserire almeno 3 caratteri"; 
		} 
	} else { 
		echo "Non hai compilato il modulo ricerca"; 
	} 
} 
?>

p.s.
spero di aver messo tutto giusto, scrivi un po' incasinato.
indenta bene e non lasciare righe vuote (fanno solo confusione)
 
ciao
dimenticavo: che cosa è?
PHP:
//.......
            $risultato = mysql_query($query) or die (mysql_error());  
            $risposta = mysql_query($query) or die ("Utilizza termini più specifici!");
//.......
cioè perche fay due interrogazioni uguali?
se la query non va a buon fine (per qualsiasi motivo) ti visualizza solo la prima con mysql_error(), il die vuul dire "muori", se invece vas a buon fine a che ti serve $risultato (o $rispsosta) che sono uguali?
 
Ciao ...
Inizialmente avevo fatto due select ma il risultato era il medesimo.. ;


Sono fuori casa appena rientro provo e ti so dire...

Grazie infinite per ora
 
Ciao,
ho provato ma non funge :(

ne mi prende il limite annunci ne mi crea i numeri per pagina :(


borgo italia
ciao
dimenticavo: che cosa è?
Codice PHP:
//.......
$risultato = mysql_query($query) or die (mysql_error());
$risposta = mysql_query($query) or die ("Utilizza termini più specifici!");
//.......
cioè perche fay due interrogazioni uguali?
se la query non va a buon fine (per qualsiasi motivo) ti visualizza solo la prima con mysql_error(), il die vuul dire "muori", se invece vas a buon fine a che ti serve $risultato (o $rispsosta) che sono uguali?

Suppongo che serva a dare il mex di errore...

tra l'altro al corso di mrwebmaster sono proprio a quel capitolo ma non mi entra in testa nonostante penso sia semplice :(

infatti risolto questo posto un piccolo problemino .......
 
cosi con due select ...

ti ho messo questo commento dove c'è la seconda select :

//se qui metto $risultato non vedo più nulla :( così funziona mi limita gli annunci , ma non mi forma le pagine

PHP:
<?php 
require "db_connect.php"; 
require "paginazione.php"; 

class MySQL  
{   
function MySQL()   
{   
require "db_connect.php"; 
}   
}   

$data = new MySQL();  

// recuperiamo il valore ricerca inviato con get 

$ricerca = $_GET['ricerca']; 

// vediamo se è stato inviato, e quindi uguale a ok 

if ( $ricerca == 'ok' ) { 

// recuperiamo ora cerca inviato con post 

$cerca = $_POST['cerca']; 

// vediamo se è stato compilato il campo 

if ( $cerca == TRUE && $cerca != "" ) { 

// ora vediamo se supera i tre caratteri 

if ( strlen($cerca) >= 3 ) { 

// ora depuriamo la stringa da cercare sul database  

$cerca =  mysql_escape_string(stripslashes($cerca));  




// istanziamo la classe per l'impaginazione  
$p = new Paging;  

// numero massimo di risultati per pagina  
$max = 5;  

// identifichiamo la pagina da cui iniziare la numerazione  
$inizio = $p->paginaIniziale($max);  
// ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi 



$query = ("SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
     
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR via LIKE '%$cerca%' ORDER by 'id_annunci' DESC LIMIT ".$inizio.",".$max);  
$count = mysql_num_rows($query); 

$risultato = mysql_query($query) or die (mysql_error());  

$risposta = mysql_query($query) or die ("Utilizza termini più specifici!"); 

$dentro_la_query= mysql_fetch_assoc($risposta); 


$pagine = $p->contaPagine($count, $max);  
//se qui metto $risultato non vedo più nulla :(  così funziona mi limita gli annunci , ma non mi forma le pagine
$query = ("SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
     
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR via LIKE '%$cerca%' ORDER by 'id_annunci' DESC LIMIT ".$inizio.",".$max);


if ( $dentro_la_query == TRUE ) { 

while($row= mysql_fetch_assoc($risultato)) {  
$click_annuncio = $row['click_annuncio']; 
$id_annunci = $row['id_annunci']; 
$user_id = $row['id']; 
  
  $descrizione = substr($row['descrizione'], 0, 100);  
  $mq = $row['mq']; 
  $prezzo = $row['prezzo']; 
  $tipologia = $row['tipologia']; 
    $sigla = $row['sigla']; 
   
  $name = $row['name']; 
   $locali = $row['locali']; 
  $via = $row['via']; 
  $citta = $row['citta']; 
  $username = $row['username']; 
  $email = $row['email']; 
   $condizioni = $row['condizioni']; 
    $regione = $row['regione']; 
     $tipo = $row['tipo']; 
      $condizioni = $row['condizioni']; 
       $logo_cliente = $row['logo_cliente']; 
          
   
   $nome_file = $row['nome_file']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   
  $nome_file_vero = $row['nome_file_vero']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   







// stampiamo i nostri dati  


 echo" <table width='100%'>"; 
  echo" <tr>"; 
   echo" <p class='three'><td colspan='3'> <a href=\"rannunci.php?id=$id_annunci\"/>$via,$citta,$name,$sigla,$regione</a></td>"; 
 echo" </tr>"; 
 echo" <tr>"; 
  echo"  <td width='14%' bgcolor='#f4f9fd'> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$id_annunci' name='nome_file'  alt'' width='200' height='154'  /></a></td>"; 
  echo"  <td width='45%' bgcolor='#f4f9fd'><table width='100%'>"; 
   echo"   <tr>"; 
    echo"    <td>$descrizione</td>"; 
    echo"  </tr>"; 
    echo"  <tr>"; 
      echo"  <td>cod annuncio : $id_annunci</td>"; 
echo"</tr>"; 
 echo"     <tr>"; 
    echo"    <td>&nbsp;</td>"; 
    echo"  </tr>"; 
   echo" </table></td>"; 
  echo"  <td width='31%' bgcolor='#f4f9fd'>Prezzo:$prezzo<br />Mq:$mq<br />Lunghezza:$locali</p> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$user_id' name='nome_file_vero' width='150' height='40'/></a></td>"; 
  echo"</tr>"; 
echo"</table>"; 


}  

} else { 

echo "Al momento non ci sono annunci in questa provincia.<br /> 
vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>"; 

} 


} else { 

echo "Devi inserire almeno 3 caratteri"; 

} 

} else { 

echo "Non hai compilato il modulo ricerca"; 

} 

} 

//mostriamo le pagine  
$lista = $p->listaPagine($_GET['p'], $pagine);  
echo $lista . "<br>";  

//mostriamo il navigatore Precedente/Successiva  
$navigatore = $p->precedenteSuccessiva($_GET['p'], $pagine);  
echo $navigatore;  


?>
 
ho fatto anche tanti altri tentativi ..... :(

ma purtroppo funziona tutto ma non si formano i numeri ecc linkabili in fondo alla pagina :(
cerca.php
PHP:
<?php 
require "db_connect.php"; 
require "paginazione.php"; 

class MySQL  
{   
function MySQL()   
{   
require "db_connect.php"; 
}   
}   

$data = new MySQL();  

// recuperiamo il valore ricerca inviato con get 

$ricerca = $_GET['ricerca']; 

// vediamo se è stato inviato, e quindi uguale a ok 

if ( $ricerca == 'ok' ) { 

// recuperiamo ora cerca inviato con post 

$cerca = $_POST['cerca']; 

// vediamo se è stato compilato il campo 

if ( $cerca == TRUE && $cerca != "" ) { 

// ora vediamo se supera i tre caratteri 

if ( strlen($cerca) >= 2 ) { 

// ora depuriamo la stringa da cercare sul database  

$cerca =  mysql_escape_string(stripslashes($cerca));  




// istanziamo la classe per l'impaginazione  
$p = new Paging;  

// numero massimo di risultati per pagina  
$max = 5;  

// identifichiamo la pagina da cui iniziare la numerazione  
$inizio = $p->paginaIniziale($max);  
// ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi 



$query_count =  ("SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
     
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR mq LIKE '%$cerca%' ORDER by 'id_annunci' DESC ") or die (mysql_error()); 
$count = @mysql_num_rows($query_count);

$risultato = mysql_query($query_count) or die (mysql_error());  

$risposta = mysql_query($query_count) or die ("Utilizza termini più specifici!"); 

$dentro_la_query= mysql_fetch_assoc($risposta); 




$pagine = $p->contaPagine($count, $max);
  
$risultato = mysql_query("SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
     
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR mq LIKE '%$cerca%' ORDER by 'id_annunci' DESC LIMIT ".$inizio.",".$max);




if ( $dentro_la_query == TRUE ) { 

while($row= mysql_fetch_assoc($risultato)) {  
$click_annuncio = $row['click_annuncio']; 
$id_annunci = $row['id_annunci']; 
$user_id = $row['id']; 
  
  $descrizione = substr($row['descrizione'], 0, 100);  
  $mq = $row['mq']; 
  $prezzo = $row['prezzo']; 
  $tipologia = $row['tipologia']; 
    $sigla = $row['sigla']; 
   
  $name = $row['name']; 
   $locali = $row['locali']; 
  $via = $row['via']; 
  $citta = $row['citta']; 
  $username = $row['username']; 
  $email = $row['email']; 
   $condizioni = $row['condizioni']; 
    $regione = $row['regione']; 
     $tipo = $row['tipo']; 
      $condizioni = $row['condizioni']; 
       $logo_cliente = $row['logo_cliente']; 
          
   
   $nome_file = $row['nome_file']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   
  $nome_file_vero = $row['nome_file_vero']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   







// stampiamo i nostri dati  


 echo" <table width='100%'>"; 
  echo" <tr>"; 
   echo" <p class='three'><td colspan='3'> <a href=\"rannunci.php?id=$id_annunci\"/>$via,$citta,$name,$sigla,$regione</a></td>"; 
 echo" </tr>"; 
 echo" <tr>"; 
  echo"  <td width='14%' bgcolor='#f4f9fd'> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini2.php?id_annunci=$id_annunci' name='nome_file'  alt'' width='200' height='154'  /></a></td>"; 
  echo"  <td width='45%' bgcolor='#f4f9fd'><table width='100%'>"; 
   echo"   <tr>"; 
    echo"    <td>$descrizione</td>"; 
    echo"  </tr>"; 
    echo"  <tr>"; 
      echo"  <td>cod annuncio : $id_annunci</td>"; 
echo"</tr>"; 
 echo"     <tr>"; 
    echo"    <td>&nbsp;</td>"; 
    echo"  </tr>"; 
   echo" </table></td>"; 
  echo"  <td width='31%' bgcolor='#f4f9fd'>Prezzo:$prezzo<br />Mq:$mq<br />Lunghezza:$locali</p> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$user_id' name='nome_file_vero' width='150' height='40'/></a></td>"; 
  echo"</tr>"; 
echo"</table>"; 


}  

} else { 

echo "Al momento non ci sono annunci in questa provincia.<br /> 
vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>"; 

} 


} else { 

echo "Devi inserire almeno 2 caratteri"; 

} 

} else { 

echo "Non hai compilato il modulo ricerca"; 

} 

} 

//mostriamo le pagine  
$lista = $p->listaPagine($_GET['p'], $pagine);  
echo $lista . "<br>";  

//mostriamo il navigatore Precedente/Successiva  
$navigatore = $p->precedenteSuccessiva($_GET['p'], $pagine);  
echo $navigatore;  


?>

paginazione.php

PHP:
<?php 
// definiamo una costante per la pagina corrente 
define("SELF", $_SERVER['PHP_SELF']); 

// definiamo la classe 
class Paging 
{ 
// definiamo la pagina di partenza 
function paginaIniziale($max_row) 
{ 
if ((!isset($_GET['p'])) || ($_GET['p'] == "1")) 
{ 
$parti_da = 0; 
$_GET['p'] = 1; 
}else{ 
$parti_da = ($_GET['p']-1) * $max_row; 
} 
return $parti_da; 
} 

// contiamo le pagine e stabiliamo quanti records devono essere impaginati  
function contaPagine($conta, $max_row) 
{ 
$pgg = (($conta % $max_row) == 0) ? $conta / $max_row : floor($conta / $max_row) + 1; 
return $pgg; 
} 

// mostriamo l'elenco delle pagine 
function listaPagine($p_corrente, $pgg) 
{ 
$listapgg = ""; 
if (($p_corrente != 1) && ($p_corrente)) 
{ 
$listapgg .= " <a href=\"".SELF."?p=1\">Prima pag.</a> "; 
} 
if (($p_corrente-1) > 0) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".($p_corrente-1)."\"><</a> "; 
} 
for ($i=1; $i<=$pgg; $i++) 
{ 
if ($i == $p_corrente) 
{ 
$listapgg .= "<b>".$i."</b>"; 
}else{ 
$listapgg .= "<a href=\"".SELF."?p=".$i."\">".$i."</a>"; 
} 
$listapgg .= " "; 
} 
if (($p_corrente+1) <= $pgg) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".($p_corrente+1)."\">></a> "; 
} 
if (($p_corrente != $pgg) && ($pgg != 0)) 
{ 
$listapgg .= "<a href=\"".SELF."?p=".$pgg."\">Ultima pag.</a> "; 
} 
$listapgg .= "</td>\n"; 
return $listapgg; 
} 

// permettiamo la navigazione per pagine precedenti e successive 
function precedenteSuccessiva($p_corrente, $pgg) 
{ 
$impaginazione = ""; 
if (($p_corrente-1) <= 0) 
{ 
$impaginazione .= "Precedente"; 
}else{ 
$impaginazione .= "<a href=\"".SELF."?p=".($p_corrente-1)."\">Pag. precedente</a>"; 
} 
$impaginazione .= " | "; 
if (($p_corrente+1) > $pgg) 
{ 
$impaginazione .= "Prossima"; 
}else{ 
$impaginazione .= "<a href=\"".SELF."?p=".($p_corrente+1)."\">Prossima pag.</a>"; 
} 
return $impaginazione; 
} 
} 
?>

Spero che qualcuno capisca cosa sbaglio ........
 
ciao
intanto togli quella @ a
PHP:
$count = @mysql_num_rows($query_count);
così vedi dove è l'errore
se non fai la query non ti da certo il numero di record
PHP:
$risultato = mysql_query($query_count) or die (mysql_error());
$count = mysql_num_rows($risultato);
intanto questo
scusa mi fermo, ma ho un accidente di rafreddore che mi fa fumare la testa
 
Ok Borgo,
infatti l'avevo tolto inizialmente perché mi ricordo che mi avevi già fatto notare la cosa ..

ma si vede che nel copia incolla mi sono dimenticato di levarlo ....

ora funzia ....

il problema stava qui
PHP:
$count = mysql_num_rows($risultato);
io mettevo query_count al posto di $risultato :(

Adesso pero' c'è un problema ...

seclicco su pagina 2 mi da
PHP:
 cerca3.php?p=2
al posto di
PHP:
cerca3.php?ricerca=ok

nella paginazione ovviamente c'è un link nel motore di ricerca un'altra ........

come devo fare a mettere la stessa per tutti e due :(
 
ho modificato così ....

PHP:
<?php 

require "paginazione.php"; 

class MySQL  
{   
function MySQL()   
{   
require "db_connect.php"; 
}   
}   

$data = new MySQL(); 



// istanziamo la classe per l'impaginazione 
$p = new Paging; 

// numero massimo di risultati per pagina 
$max = 5; 

// identifichiamo la pagina da cui iniziare la numerazione 
$inizio = $p->paginaIniziale($max); 
// ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi 

$ricerca = $_GET['p'];

// vediamo se è stato inviato, e quindi uguale a ok

if ( $ricerca == '1' ) {

// recuperiamo ora cerca inviato con post 

$cerca = $_POST['cerca']; 

// vediamo se è stato compilato il campo 

if ( $cerca == TRUE && $cerca != "" ) { 

// ora vediamo se supera i tre caratteri 

if ( strlen($cerca) >= 2 ) { 

// ora depuriamo la stringa da cercare sul database  

$cerca =  mysql_escape_string(stripslashes($cerca));  


$query_count = ("SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
      INNER JOIN tipo ON (annunci.tipoid=tipo.id)
      INNER JOIN tipo_barca ON (annunci.tipo_barcaid=tipo_barca.id)
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR mq LIKE '%$cerca%'  ") or die (mysql_error()); 


$risultato = mysql_query($query_count) or die (mysql_error()) ;  

$risposta = mysql_query($query_count) or die ("Utilizza termini più specifici!"); 




$count = mysql_num_rows($risultato);

// troviamo il numero delle pagine che dovr� essere contato
$pagine = $p->contaPagine($count, $max); 

$dentro_la_query= mysql_fetch_assoc($risultato); 


  
$risultato = @mysql_query("SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
      INNER JOIN tipo ON (annunci.tipoid=tipo.id) 
     INNER JOIN tipo_barca ON (annunci.tipo_barcaid=tipo_barca.id)
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR mq LIKE '%$cerca%' ORDER by 'id_annunci' DESC LIMIT ".$inizio.",".$max);




if ( $dentro_la_query == TRUE ) { 

while($row= mysql_fetch_assoc($risultato)) {  
$click_annuncio = $row['click_annuncio']; 
$id_annunci = $row['id_annunci']; 
$user_id = $row['id']; 
    $tipo_barca = $row['tipo_barca'];
  $descrizione = substr($row['descrizione'], 0, 25);  
  $mq = $row['mq']; 
  $prezzo = $row['prezzo']; 
  $tipologia = $row['tipologia']; 
    $sigla = $row['sigla']; 
   $tipo = $row['tipo']; 
  $name = $row['name']; 
   $locali = $row['locali']; 
  $via = $row['via']; 
  $citta = $row['citta']; 
  $username = $row['username']; 
  $email = $row['email']; 
   $condizioni = $row['condizioni']; 
    $regione = $row['regione']; 
     $tipo = $row['tipo']; 
      $condizioni = $row['condizioni']; 
       $logo_cliente = $row['logo_cliente']; 
          
   
   $nome_file = $row['nome_file']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   
  $nome_file_vero = $row['nome_file_vero']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   







// stampiamo i nostri dati  

 echo" <h5><table width='100%'>"; 
  echo" <tr>"; 
   echo" <p class='three'><td colspan='3'> <a href=\"rannunci.php?id=$id_annunci\"/>$via,$citta,$name,$sigla,$regione</a></td>"; 
 echo" </tr>"; 
 echo" <tr>"; 
  echo"  <td width='14%' bgcolor='#f4f9fd'> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini2.php?id_annunci=$id_annunci' name='nome_file'  alt'' width='150' height='150'  /></a></td>"; 
  echo"  <td width='45%' bgcolor='#f4f9fd'><table width='100%'>"; 
   echo"   <tr>"; 
    echo"    <td>Stato Imbarcazione :<br /> $tipo <br /> Tipo imbarcazione: $tipo_barca<br /></td>"; 
    echo"  </tr>"; 
    echo"  <tr>"; 
      echo"  <td> <a href=\"rannunci.php?id=$id_annunci\"/><button class=\"button orangeButt\">Vedi dettagli </button></td>"; 
echo"</tr>"; 
 echo"     <tr>"; 
    echo"    <td>&nbsp;</td>"; 
    echo"  </tr>"; 
   echo" </table></td>"; 
  echo"  <td width='31%' bgcolor='#f4f9fd'>Prezzo:$prezzo<br />Lunghezza:$mq<br />Cabine:$locali</p> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$user_id' name='nome_file_vero' width='150' height='40'/></a></td>"; 
  echo"</tr>"; 
echo"</table></h5>"; 

}  

} else { 

echo "Al momento non ci sono annunci in questa provincia.<br /> 
vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>"; 

} 

//mostriamo le pagine 
$lista = $p->listaPagine($_GET['p'], $pagine); 
echo $lista . "<br>"; 

//mostriamo il navigatore Precedente/Successiva 
$navigatore = $p->precedenteSuccessiva($_GET['p'], $pagine); 
echo $navigatore; 
} else { 

echo "Devi inserire almeno 2 caratteri"; 

} 

} else { 

echo "Non hai compilato il modulo ricerca"; 

} 

} 


?>
</body>
</html>

ma perché pur contandomi i risultati e le pagine se clicco sul numero 2 oppure prox pagina mi da pagina bianca non portandosi dietro i risultati ??????
 
ciao
prova con queste modifiche

PHP:
<?php
//...................
$pagine = $p->contaPagine($count, $max);  
//$dentro_la_query= mysql_fetch_assoc($risultato);  a che cavolo ti serve??
//togli quella maledetta chiocciola, le @ si mettono, se servono, solo quando lo script funzia completamente
//prova a cambiare nome a questa query
$risultato_2 = mysql_query("SELECT * FROM  
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id )  
    INNER JOIN provincia ON (annunci.provinciaid=provincia.id)  
     INNER JOIN citta ON (annunci.cittaid=citta.id)  
     INNER JOIN cliente ON (annunci.clienteid=cliente.id)  
     INNER JOIN users ON (annunci.user_id=users.id)  
      INNER JOIN tipo ON (annunci.tipoid=tipo.id)  
     INNER JOIN tipo_barca ON (annunci.tipo_barcaid=tipo_barca.id) 
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR mq LIKE '%$cerca%' ORDER by 'id_annunci' DESC LIMIT ".$inizio.",".$max); 
if ( $risultato_2  == TRUE ) {  
	while($row= mysql_fetch_assoc($risultato_2)) {   
		$click_annuncio = $row['click_annuncio'];  
		//................
?>
 
//$dentro_la_query= mysql_fetch_assoc($risultato); a che cavolo ti serve??

fa' il controllo come può' vedere in alto ..

infatti ho provato con e senza ...

ma mi da sempre l'errore dell'if e mi printa

PHP:
echo "Al momento non ci sono annunci in questa provincia.<br /> 
vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>";

ti metto anche il form cerca3.php magari ti può' servire

PHP:
 <table width="100%">
  <tr>
    <td width="26%"><img src="immagini/italia.jpg" width="257" height="264" border="0" usemap="#Map" /></td>
    <td width="74%">
    <table width="100%">
          <tr>
            <th width="90%" align="center" valign="bottom" scope="col">&nbsp;</th>
            <th width="9%" scope="col"></th>
          </tr>
          <tr>
                      
            <td align="center" valign="bottom"> <h2>Vendita Barche</h2> <hr /><h5>inserisci: un comune o una provincia o una regione o una citta' o un prezzo o una lunghezza</h5>
            
           //qui inizialmente era action="cerca3.php?ricerca=ok"  
            <form action='cerca3.php?p=1' method='POST'>




  <input type='text' tabindex='15' name='cerca' class='input' size="15" >
  
  
 

  
  
  </td>
            <td width="9%"><br /><br /><br /><br /><br />
            <button class="button orangeButt">Trova<br />Barche</button>

        </form><td width="1%"></td>
          </tr>
        </table>
            
            
            
    
    </td>
  </tr>
</table>



PHP:
<html>
<head>
<link href="nautica.css" rel="stylesheet" type="text/css" />
</head>
<body>
<?php 

require "paginazione.php"; 

class MySQL  
{   
function MySQL()   
{   
require "db_connect.php"; 
}   
}   

$data = new MySQL(); 



// istanziamo la classe per l'impaginazione 
$p = new Paging; 

// numero massimo di risultati per pagina 
$max = 5; 



// identifichiamo la pagina da cui iniziare la numerazione 
$inizio = $p->paginaIniziale($max); 
// ora possiamo effettuare la nostra ricerca sul db, state attenti alla sintassi 


$ricerca = $_GET['p'];

// vediamo se è stato inviato, e quindi uguale a ok

if ( $ricerca == '1' ) {

// recuperiamo ora cerca inviato con post 

$cerca = $_POST['cerca']; 

// vediamo se è stato compilato il campo 

if ( $cerca == TRUE && $cerca != "" ) { 

// ora vediamo se supera i tre caratteri 

if ( strlen($cerca) >= 2 ) { 

// ora depuriamo la stringa da cercare sul database  

$cerca =  mysql_escape_string(stripslashes($cerca));  


$query_count = ("SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
     INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
      INNER JOIN tipo ON (annunci.tipoid=tipo.id)
      INNER JOIN fascia ON (annunci.fasciaid=fascia.id)
     INNER JOIN modello ON (annunci.modelloid=modello.id)
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR mq LIKE '%$cerca%' OR modello LIKE '%$cerca%' OR tipo LIKE '%$cerca%' OR fascia LIKE '%$cerca%'  ") or die (mysql_error()); 
 



$risultato2 = mysql_query($query_count) or die (mysql_error()) ;  

$risposta = mysql_query($query_count) or die ("Utilizza termini più specifici!"); 


$count = mysql_num_rows($risultato2);

// troviamo il numero delle pagine che dovr� essere contato
$pagine = $p->contaPagine($count, $max); 

$risultato2= mysql_fetch_assoc($risultato2); 
  
$risultato2 = mysql_query("SELECT * FROM 
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id ) 
     INNER JOIN provincia ON (annunci.provinciaid=provincia.id) 
     INNER JOIN citta ON (annunci.cittaid=citta.id) 
     INNER JOIN cliente ON (annunci.clienteid=cliente.id) 
     INNER JOIN users ON (annunci.user_id=users.id) 
      INNER JOIN tipo ON (annunci.tipoid=tipo.id)
      INNER JOIN fascia ON (annunci.fasciaid=fascia.id)
      INNER JOIN modello ON (annunci.modelloid=modello.id)
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR mq LIKE '%$cerca%' OR modello LIKE '%$cerca%' OR tipo LIKE '%$cerca%' OR fascia LIKE '%$cerca%' ORDER by 'id_annunci' DESC LIMIT ".$inizio.",".$max);

if ( $risultato_2  == TRUE ) {   
    while($row= mysql_fetch_assoc($risultato_2)) {    
        $click_annuncio = $row['click_annuncio'];

$click_annuncio = $row['click_annuncio']; 
$id_annunci = $row['id_annunci']; 
$user_id = $row['id']; 
    $modello = $row['modello'];
  $descrizione = substr($row['descrizione'], 0, 25);  
  $mq = $row['mq'];
  $messaggio = $row['messaggio'];
  $prezzo = $row['prezzo']; 
  $tipologia = $row['tipologia']; 
    $sigla = $row['sigla']; 
   $tipo = $row['tipo']; 
  $name = $row['name']; 
   $locali = $row['locali']; 
  $via = $row['via']; 
  $citta = $row['citta']; 
  $username = $row['username']; 
  $email = $row['email']; 
   $condizioni = $row['condizioni']; 
    $regione = $row['regione']; 
     $tipo = $row['tipo']; 
      $condizioni = $row['condizioni']; 
       $logo_cliente = $row['logo_cliente']; 
          
   
   $nome_file = $row['nome_file']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   
  $nome_file_vero = $row['nome_file_vero']; 
  $tipo_file = $row['tipo_file']; 
  $dati_file = $row['dati_file']; 
   







// stampiamo i nostri dati  

 echo" <h5><table width='100%'>"; 
  echo" <tr>"; 
   echo" <p class='three'><td colspan='3'> <a href=\"rannunci.php?id=$id_annunci\"/>$via,$citta,$name,$sigla,$regione</a></td>"; 
 echo" </tr>"; 
 echo" <tr>"; 
  echo"  <td width='14%' bgcolor='#f4f9fd'> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini2.php?id_annunci=$id_annunci' name='nome_file'  alt'' width='150' height='150'  /></a></td>"; 
  echo"  <td width='45%' bgcolor='#f4f9fd'><table width='100%'>"; 
   echo"   <tr>"; 
    echo"    <td>Stato Imbarcazione :<br /> $tipo <br /> Tipo imbarcazione: $modello<br /></td>"; 
    echo"  </tr>"; 
    echo"  <tr>"; 
      echo"  <td> <a href=\"rannunci.php?id=$id_annunci\"/><button class=\"button orangeButt\">Vedi dettagli </button></td>"; 
echo"</tr>"; 
 echo"     <tr>"; 
    echo"    <td>&nbsp;</td>"; 
    echo"  </tr>"; 
   echo" </table></td>"; 
  echo"  <td width='31%' bgcolor='#f4f9fd'>Prezzo:$prezzo<br />Lunghezza:$mq<br />Cabine:$locali</p> <a href=\"rannunci.php?id=$id_annunci\"/><img src='immagini1.php?id=$user_id' name='nome_file_vero' width='150' height='40'/></a></td>"; 
  echo"</tr>"; 
echo"</table></h5>"; 

}  

} else { 

echo "Al momento non ci sono annunci in questa provincia.<br /> 
vuoi essere tu il primo ? vai a <a href='registrati.php'/>Registrati</a>"; 

} 



//mostriamo le pagine 
$lista = $p->listaPagine($_GET['p'], $pagine); 
echo $lista . "<br>"; 

//mostriamo il navigatore Precedente/Successiva 
$navigatore = $p->precedenteSuccessiva($_GET['p'], $pagine); 
echo $navigatore; 
} else { 

echo "Devi inserire almeno 2 caratteri"; 

} 

} else { 

echo "Non hai compilato il modulo ricerca"; 

} 

} 


?>
</body>
</html>
 
ciao
no il form non mi serve (sembre che funzi)
però stai attento ai nomi delle variabili
$risultato2 $risultato_2
poi per fare un controllo usa $count, se $count == 0 non ci sono annunci se $count > 0 si
poi se chiami la query col limit pinco while $row= mysql_fetch_assoc(pinco) devi mettere pinco
 
Hai ragione scusa ho corretto e funge .......

Ma come ieri .... mi fa vedere solo i primi risultati come clicc o su pag 2 oppure avanti mi pronta pagina vuota .... non mi prende la paginazione delle altre pagine :(
 
ciao
dividi la query con il limit e metti dei var_dump in
PHP:
<?php
//..........
$q = "SELECT * FROM  
    annunci INNER JOIN regione ON (annunci.regioneid=regione.id )  
     INNER JOIN provincia ON (annunci.provinciaid=provincia.id)  
     INNER JOIN citta ON (annunci.cittaid=citta.id)  
     INNER JOIN cliente ON (annunci.clienteid=cliente.id)  
     INNER JOIN users ON (annunci.user_id=users.id)  
      INNER JOIN tipo ON (annunci.tipoid=tipo.id) 
      INNER JOIN fascia ON (annunci.fasciaid=fascia.id) 
      INNER JOIN modello ON (annunci.modelloid=modello.id) 
    WHERE id_annunci LIKE '%$cerca%'  OR name LIKE '%$cerca%' OR regione LIKE '%$cerca%' OR citta LIKE '%$cerca%' OR descrizione LIKE '%$cerca%' OR prezzo LIKE '%$cerca%' OR mq LIKE '%$cerca%' OR modello LIKE '%$cerca%' OR tipo LIKE '%$cerca%' OR fascia LIKE '%$cerca%' ORDER by 'id_annunci' DESC LIMIT ".$inizio.",".$max; 
var_dump($q);
$risultato_2 = mysql_query($q);
//..........
?>
e verifica cosa ti riestituisco la prima volta e quando cambi pagina
 

Discussioni simili