php: passare in seconda pagina - max4001976, quando la pagina diventa troppo lunga è opportuno andare in seconda pagina ad esempio il nostro forum

« Older   Newer »
  Share  
maxmaxuell
view post Posted on 19/6/2011, 15:41     +1   -1




php: passare in seconda pagina - max4001976



quando la pagina diventa troppo lunga è opportuno andare in seconda pagina ad esempio il nostro forum



Per evitareche la pagina diventi lunga un chilometro in genre metto uno scroll,
ma in questo caso vorrei passare in seconda pagina e poi una terza utilizzando il comando fopen + una variabile numerica associata al file pagina*.php che aumenta progressivamente tipo

pagina1.php
pagina2.php
pagina3.php

Domanda semplice e diretta...
come si fa?

inizio lo script...



HTML
<div align=center>
<img src="http://www.adriano.casissa.it/wp-content/uploads/2008/09/thais-velina-tette-capezzolo.jpg"
width=320 height=242 alt="thais capezzolo - max4001976"
>
<br>
<u>Mi sembra di vedere qualkosa di thais e voi? - by max400</u><br><br>

<?
if(isset($_POST['messaggio'])){
$messaggio=htmlspecialchars($_POST['messaggio']);

$var=fopen("pagina1.php","a+");
fwrite($var, "<tr><td><img src=' ' width=100 height=100></td><td valign=top><div style='width:200px'> $messaggio </div></td></tr>");
fclose($var);
}

?>

<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="POST">
<input type="text" name="messaggio" size="30">
<input type="submit" value="scrivi commento">
</form><br>

<font color=red><h1>Commenti</h1></font><br>

<font color=blue>
<? include "pagina1.php"; ?>
</font>
</table><br>
<a href="pagina1.php">vai alla pagina dei commenti</a>

</div>
 
Top
sevenjeak
view post Posted on 23/6/2011, 09:04     +1   -1




Basta che crei un'unica pagina dinamica, non occorre una pagina per ogni risultato, che modifica le righe da visualizzare, ti può aiutare modificando un sistema di paginazione mysql, ho già risposto sul forum di altervista a riguardo, dai un'occhiata:

http://forum.it.altervista.org/php-mysql-e...html#post822803

Non so se sei te il proprietario di questa discussione, visto che è quasi lo stesso messaggio.
 
Top
maxmaxuell
view post Posted on 24/6/2011, 00:15     +1   -1




ho visto l'esempio ho preso i 3 spezzoni di script e li ho messi tutti insieme ma è comparso un errore... bò..

Comunque io la tabella ce l'ho pronta ho 7 record e
desidero che vengano visualizzati i primi 5 record

Mi serve uno script già testato.... breve.... il più breve possibile e funzionante.

Ho la versione 4 di php penso che si possa fare benissimo.
Già ho provato questo script che stava per funzionare...

http://www.mrwebmaster.it/php/articoli/pag...-mysql_455.html

mentre questo è quello che ho elaborato da quell'esempio
HTML
<?
// Creo una variabile dove imposto il numero di record
// da mostrare in ogni pagina
$x_pag = 5;

// Recupero il numero di pagina corrente.
// Generalmente si utilizza una querystring
$pag = htmlspecialchars($_GET['pag']);

// Controllo se $pag è valorizzato...
// ...in caso contrario gli assegno valore 1
if (!$pag) $pag = 1;

// Mi connetto al database
$conn = mysql_connect("localhost","","");
mysql_select_db("nome_database", $conn);

// Uso mysql_num_rows per contare le righe presenti
// all'interno della tabella agenda
$all_rows = mysql_num_rows(mysql_query("SELECT id FROM nome_tabella"));

// Tramite una semplice operazione matematica 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...
// utilizzando LIMIT per partire da $first e contare fino a $x_pag
$rs = mysql_query("SELECT * FROM nome_tabella 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 border=1 width=700><tr>";
echo "<td width=650>" . $row['id'] . "</td>";
echo "<td width=650>" . $row['user'] . "</td>";
echo "<td width=650>" . $row['pass'] . "</td>";
echo "<td width=650>" . $row['citta'] . "</td>";
echo "<td width=650>" . $row['data'] . "</td>";
echo "<td width=650>" . $row['ip'] . "</td>";
echo "</tr></table>";
}
}else{
echo "Nessun record trovato!";
}

// Se le pagine totali sono più di 1...
// stampo i link per andare avanti e indietro tra le diverse pagine!
if ($all_pages > 1){
if ($pag > 1){
echo "<a href=\"" . $_SERVER['PHP_SELF'] . "?pag=" . $pag - 1 . "\">";
echo "Pagina Indietro</a>&nbsp;";
}
if ($all_pages > $pag){
echo "<a href=\"" . $_SERVER['PHP_SELF'] . "?pag=" . $pag + 1 . "\">";
echo "Pagina Avanti</a>";
}
}

// Chiudo la connessione ad DB
mysql_close($conn);
?>


guarda tu stesso il risultato
http://max400scuola.altervista.org/aaa/est...ne_a_pagine.php
 
Top
maxmaxuell
view post Posted on 28/6/2011, 12:40     +1   -1




tutto risolto anche l'ordinamento dei numeri (ID)
quest'ultimo l'ho fatto direttamente da phpadministrator
ordine crescente ID ---> ESEGUI
ok
 
Top
3 replies since 19/6/2011, 15:41   41 views
  Share