Ho corretto.
Ora il 2° pulsante mostra (solo) gli ultimi 5 risultati, mentre il primo mostra sempre gli stessi risultati (i primi 20)
Ho corretto.
Ora il 2° pulsante mostra (solo) gli ultimi 5 risultati, mentre il primo mostra sempre gli stessi risultati (i primi 20)
Nessuna altra idea per come risolvere?![]()
Molto strano. Proviamo a stampare i valori che concorrono al calcolo di $offset_next, per vedere cosa sta succedendo:mentre il primo mostra sempre gli stessi risultati (i primi 20)
Codice PHP:
echo "Numero: " . $numero . "<br>";
echo "Numvis: " . $numvis . "<br>";
echo "n_rows: " . $n_rows . "<br>";
$offset_next = $numero + $numvis < n_rows ? $numero + $numvis : $numero;
echo "Prossima pagina: " . $offset_next . "<br>";
I suggerimenti che do più spesso:
- Le funzioni mysql_* non fanno più parte di PHP. Usa PDO o MySQLi.
- Il supporto a PHP 5.x è cessato l'1 gennaio 2019, e con esso le funzioni mysql_*. Che ti piaccia o no.
- Non memorizzare le password in chiaro nella base di dati. Usa password_hash().
- Indenta correttamente il codice e usa nomi significativi per gli identificatori.
Il risultato è questo:
Numero: 0
Numvis: 20
n_rows: 347
Prossima pagina: 0
http://paolin.altervista.org/dizge-b...i%202inter.php
Il solito errore di battitura, mancava un dollaro:
Codice PHP:
$offset_next = $numero + $numvis < $n_rows ? $numero + $numvis : $numero;
I suggerimenti che do più spesso:
- Le funzioni mysql_* non fanno più parte di PHP. Usa PDO o MySQLi.
- Il supporto a PHP 5.x è cessato l'1 gennaio 2019, e con esso le funzioni mysql_*. Che ti piaccia o no.
- Non memorizzare le password in chiaro nella base di dati. Usa password_hash().
- Indenta correttamente il codice e usa nomi significativi per gli identificatori.
GRAZIE!!! Funziona!
Già che c'ero ho provato anche a metter giù il pulsante per tornare indietro di una pagina.
Il tutto è questo:
Codice PHP:
<?php
$numero=(int) $_POST['numero'];
//$numero=$_POST["numero"];
$numvis=20;
?>
<!doctype html public "-//w3c//dtd html 4.0 Transitional//EN">
<HTML>
<head>
...
<?php
$n_rows = $row['n_rows'];
$offset_prima = $numero - $numvis < $n_rows ? $numero - $numvis : $numero;
$offset_next = $numero + $numvis < $n_rows ? $numero + $numvis : $numero;
$offset_last = floor(($n_rows - 1) / $numvis) * $numvis;
mysqli_free_result($result);
mysqli_close($connection);
?>
<form action="dizge-bot_sqli 2inter.php" method="post">
precedenti 20 parole<br><nobr><font size=4><</font>
<input type="hidden" name="numero" value=<?php echo $offset_prima; ?>>
<input type="submit" value="Indietro" style="width:66px; height:20px;" class="button b-form"></nobr>
</form>
<form action="dizge-bot_sqli 2inter.php" method="post">
prossime 20 parole<br><input type="hidden" name="numero" value=<?php echo $offset_next; ?>>
<nobr><input type="submit" value="Avanti" style="width:64px; height:20px;" class="button b-form">
<font size=4>></font></nobr>
</form>
<form action="dizge-bot_sqli 2inter.php" method="post">
ultime parole <br><input type="hidden" name="numero" value=<?php echo $offset_last; ?>>
<nobr><input type="submit" value="Ultimo" style="width:64px; height:20px;" class="button b-form">
<font size=4>>></font></nobr>
</form>
Ben fatto!
Ma se cerchi di tornare indietro dalla prima pagina $numero diventa negativo. Puoi modificare così:
in questo modo, se cerchi di tornarne indietro, resti nella prima pagina.Codice PHP:
$offset_prima = $numero - $numvis >= 0 ? $numero - $numvis : 0;
I suggerimenti che do più spesso:
- Le funzioni mysql_* non fanno più parte di PHP. Usa PDO o MySQLi.
- Il supporto a PHP 5.x è cessato l'1 gennaio 2019, e con esso le funzioni mysql_*. Che ti piaccia o no.
- Non memorizzare le password in chiaro nella base di dati. Usa password_hash().
- Indenta correttamente il codice e usa nomi significativi per gli identificatori.
Sei grande!!!
Lo leggo solo ora... è da un'ora che sto studiando come risolvere!
Grazie ancora, di tutto! (Almeno un problema l'ho risolto)![]()
Figurati.
I suggerimenti che do più spesso:
- Le funzioni mysql_* non fanno più parte di PHP. Usa PDO o MySQLi.
- Il supporto a PHP 5.x è cessato l'1 gennaio 2019, e con esso le funzioni mysql_*. Che ti piaccia o no.
- Non memorizzare le password in chiaro nella base di dati. Usa password_hash().
- Indenta correttamente il codice e usa nomi significativi per gli identificatori.