Ciao, scrivo in php da un paio di settimane utilizzando la vs.guida "Guida PHP/MySql pratica". Alla fine ho realizzato il mio primo script per visualizzare delle news prese dal mio db mysql. Tutto ok. Vorrei fare in modo adesso che gli ultimi 4 articoli inseriti in ordine di tempo siano visualizzati sulla home page uno per uno all'interno di <table> codice1...</table>, <table> codice2...</table> ecc. . poi li posiziono con dei fogli di stile.
Posto il codice per far capire meglio:
<?
include("conn.php");
$db_tab = @mysql_connect($host, $user, $password);
if ($db_tab == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file conn.php");
@mysql_select_db($db_name, $db_tab)
or die ("Errore nella selezione del database. Verificare i parametri nel file connessione.php");
/*Il primo articolo da visualizzare sarà memorizzato in una variabile che passeremo alla pagina con il metodo get. Se questa non viene passata assumiamo questo valore uguale a zero, quindi visualizzeremo gli ultimi articoli. Impostiamo inoltre il numero di articoli da visualizzare contemporaneamente a 8:*/ if (!isset($start) OR $start<0)
$start= 0;
$step = 1; //variato da me per visualizzare solo un record
$query = "SELECT id,data,testo FROM articoli ORDER BY data DESC LIMIT $start,$step";
/* I parametri del vincolo LIMIT sono variabili. $step è impostato a priori e sempre fisso, $start varia invece a seconda del valore passato alla pagina.*/
//questo lo realizzato per avere con certezza il numero di caratteri da visualizzare sulla home page all'interno di una singola tabella.
$result = mysql_query($query, $db_tab);
while ($row = mysql_fetch_array($result))
{
$testoform = wordwrap($row[testo]);
nl2br($testoform);
echo substr("$testoform",0,320);
}
mysql_close($db_tab);
?>
l'ultimo record inserito in ordine di tempo funziona perfettamente ma per gli altri 3 non so prorpio come fare.
Grazie.
P.S. La tabella nel db contiene 5 campi:
( id int(5) UNSIGNED auto_increment;
titolo text
data int(11)
testo text
autore varchar(100))![]()