Salve, ho un problema con gli array che non riesco a gestire.
Ho un sito su altervista con sql e query limitate, ho una sezione news che prende i dati da un tabella del DB. Per evitare di fare continuamente query ad ogni cambio e refresh di pagina ho pensato di utilizzare una variabile di sessione dove vado a salvare un timestam se la differenza tra il timestamp attuale e quello della variabile è maggiore di 5 minuti allora mi controlla se ci sono nuove news (ma lo stesso sistema lo dovrei usare per nuovi messaggi della messaggistica interna.
Il problema sono gli array che gestiscono le news
Codice PHP:
<?php
$tm=time();
$tnews=array();
$msgnews=array();
if ((!(isset($_SESSION['timernews'])))||(($tm-$_SESSION['timernews'])>5000))
{
$mysqli = new mysqli("localhost", "root", $psw,$db);
// verifica dell'avvenuta connessione
if (mysqli_connect_errno()) {
// notifica in caso di errore
// interruzione delle esecuzioni i caso di errore
exit();
}
$i=0;
// chiusura della connessione
$query = "SELECT * FROM news ";
// esecuzione della query
$result = $mysqli->query($query);
// conteggio dei record restituiti dalla query
if($result->num_rows >0)
{
while($row = $result->fetch_array(MYSQLI_ASSOC))
{
$tnews[$i]=$row['Titolo'];
$msgnews[$i]=$row['News'];
$i+=1;
}
}
$mysqli->close();
$_SESSION['timernews']=time();
}
?>
Così messo ogni volta riazzera gli array e quindi quando non entra nell'IF la sezione risulta essere vuota.
Qualcuno potrebbe darmi una mano cortesemente ??
Poi un'ulteriore domanda visto che questa sezione mi prende in considerazione solo i primi tre messaggi, ed avendo un'altra pagina dove vedo tutte le news, volendo metterla in un file come funzione a se state come posso fare ??
Grazie Daniele