Generare pagine

leon-kennedy

Utente Attivo
19 Mag 2010
147
0
0
Ciao vorrei sapere come si fa a generare nuove pagine con php come ad esempio quella per il numero di argomenti in questo forum.Arrivati a un tot di argomenti si va alla pagina 2 e così via...

Io ho questo script:
PHP:
<?
$team = $_SESSION['username'];
$query = "SELECT * FROM SQUADRA_dati ORDER BY punti DESC";  
$result = mysql_query($query) or die(mysql_error()); 
while($row = mysql_fetch_array($result)) 
{ 
echo $row['team'];
echo $row['manager'];
echo $row['punti'];
echo $row['vittorie'];
echo $row['pareggi'];
echo $row['sconfitte'];
}  
?>
Vorrei che una volta estratti 25 dati(visualizzati nella prima pagina),arrivati al 26esimo si passase ad una pagina nuova generata automaticamente...

Spero di essermi spiegato bene e che qualcuno possa darmi una mano!0:)
 
Grazie mille ad entrambi! :)
Sono riuscito a fare questo script con qualche modifica,ma c'è un piccolo problema:
PHP:
<?
//inclusione della classe
include('classe_paginazione.php');

//record da mostrare in ogni pagina
$x_pag = 25;

//recupero il numero di pagina corrente utilizzando una querystring
$pag = $_GET['pag'];

//se $pag non è valorizzato gli assegno valore 1
if (!$pag) $pag = 1; 

//connessione al database
include('../connect.php');

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

//conto i record nel database
$query_count = mysql_query("SELECT * FROM GIOC_giovani") or die (mysql_error());
$count = mysql_num_rows($query_count) or die (mysql_error());

//trovo il numero delle pagine che dovrà essere contato
$pagine = $p->contaPagine($count, $x_pag);

//contiamo le righe presenti nella tabella
$all_rows = mysql_num_rows(mysql_query("SELECT id FROM GIOC_giovani"));

//definisco il numero totale di pagine
$all_pages = ceil($all_rows / $x_pag);

//calcolo da quale record iniziare
$first = ($pag - 1) * $x_pag;

//recupero i record per la pagina corrente
$rs = mysql_query("SELECT * FROM GIOC_giovani LIMIT $first, $x_pag");
$nr = mysql_num_rows($rs);
if ($nr != 0){
  for($x = 0; $x < $nr; $x++){
    $row = mysql_fetch_assoc($rs);
    echo "<table>";
    echo "<td>" . $row['nome'] . "</td>";
    echo "<td>" . $row['cognome'] . "</td>";
    echo "<td>" . $row['ruolo'] . "</td>";
    echo "</table>";
  }
}else{
  echo "Nessun record trovato!";
}

//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;

//chiudo la connessione
mysql_close($conn);
?>

I primi 25 record sono estratti in modo corretto,però se cambio pagina i record non cambiano...sapete dirmi dove sbaglio?0:)
 
Ciao ho risolto in un altro modo,ma ho ancora un piccolo problema con number_format:

PHP:
<? 
while ($row = mysql_fetch_assoc($res)) { 
        echo <<<END 
    <tr> 
        <td>{$row['nome']}</td> 
        <td>{$row['cognome']}</td> 
        <td>{$row['ruolo']}</td> 
        <td>{$row['età']}</td> 
        <td>{$row['costo']} €</td> 
        <td>{$row['squadra']}</td> 
        <td>{$row['tiro']}</td> 
        <td>{$row['velocità']}</td> 
        <td>{$row['tecnica']}</td> 
        <td>{$row['scivolata']}</td> 
        <td>{$row['resistenza']}</td> 
        <td><a href="azione_compra.php"><img src="immagini/icona_compra.jpg"></a></td> 
    </tr> 
END; 
    } 
?>

La riga dove posto il costo sapete dirmi come formattarla con number_format...ho fatto alcune prove,ma mi restituisce sempre un errore! :(
 
L'ultima prova ho fatto così:

PHP:
<?  
while ($row = mysql_fetch_assoc($res)) {  
$costo = ($row['costo'], "0", "", ".");     
    echo <<<END  
    <tr>  
        <td>{$row['nome']}</td>  
        <td>{$row['cognome']}</td>  
        <td>{$row['ruolo']}</td>  
        <td>{$row['età']}</td>  
        <td>{$costo} €</td>  
        <td>{$row['squadra']}</td>  
        <td>{$row['tiro']}</td>  
        <td>{$row['velocità']}</td>  
        <td>{$row['tecnica']}</td>  
        <td>{$row['scivolata']}</td>  
        <td>{$row['resistenza']}</td>  
        <td><a href="azione_compra.php"><img src="immagini/icona_compra.jpg"></a></td>  
    </tr>  
END;  
    }  
?>
 
È ovvio che ti restituisce errore. Ti sei dimenticato di specificare il nome della funzione:
PHP:
$costo = ($row['costo'], "0", "", ".");
Devi farlo diventare
PHP:
$costo = number_format($row['costo'], "0", "", ".");
E vedi se così funziona.
 
Ciao scusa avevo sbagliato a trascrivere....numeber_format l'avevo messo nel codice!
Cmq avevo chiuso una parantesi graffa di troppo e non me ne ero accorto!

Tutto risolto :)
 

Discussioni simili