ciao,
ho creato la tabella topic_letti
codice:
create table topic_letti(
tID int not null primary key auto_increment,
id_topic int references topics(topicId),
id_user int references utenti(userId),
ultimo_accesso_data date,
ultimo_accesso_ora time
);
quando leggo il topic ho inserito questo pezzo di codice
Codice PHP:
$user_id=$riga["userId"]; //recupero l'id dell'user da una query
$topic_id = $_GET["topic_id"]; //acquisizione dell'id del topic
$data = date("Y-m-d");
$time = date("H:i:s");
//controllo prima se nella tabella topic_letti c'è già il topic in questione cliccato dall'utente $user_id
$select001 = mysql_query("SELECT * FROM topic_letti WHERE id_topic = $topic_id AND id_user = $user_id ");
$fetch001 = mysql_fetch_array($select001);
if($fetch001) //se è stato gia visualizzato lo aggiorno
{
$update_table = mysql_query("UPDATE topic_letti SET id_user = ".$user_id.", id_topic = ".$topic_id.", ultimo_accesso_data = '".$data."', ultimo_accesso_ora = '".$time."' WHERE id_topic = $topic_id AND id_user = $user_id ");
} else
{ //altrimenti inserisco il record
$insert001 = mysql_query("INSERT INTO topic_letti(id_user, id_topic, ultimo_accesso_data, ultimo_accesso_ora) VALUES($user_id, $topic_id, '$data', '$time') ");
}
nella pagina vediforum.php dove stampo l'elenco dei topic ho inserito questo codice
Codice PHP:
if(isset($_SESSION["nikname"]))
{
$nikname = $_SESSION["nikname"];
$user_query = mysql_query("SELECT * FROM utenti WHERE username = '$nikname' ");
$user_fetch = mysql_fetch_array($user_query);
$userID = $user_fetch["userId"]; //recupero l'userID dell'utente connesso
//lo confrtonto nella tabella topic_letti
$select = mysql_query("SELECT * FROM topic_letti WHERE id_user = $userID ");
$fetch = mysql_fetch_array($select);
//se l'ora dell'ultima visita del topic è minore di quella di connessione dell'utente dell'utente allora è stato già letto e assegno la cartella grigia
if($fetch["ultimo_accesso_ora"] > $riga["ultimaVisitaOra"])
{
$folder = "folder.gif";
}
else
{ //altrimenti assegno quella rossa
$folder = "folder_new.gif";
}
} else
{
$folder = "folder.gif";
}
ma il tutto sembra non funzionare, avrò sicuramente commesso qualche errore