Messages lus (forum)

Répondre
C_Kirby
le 12/06/2003 à 16:10
C_Kirby
J'ai compris :
En fait, j'ai envoyé un cookie avec 24 réponses.
Maintenant je retourne sur lire_sujet.php (la page d'ou j'envoie mon cookie).
Je vais dans le dossier ou les cookies sont stockés, et la valeur reste toujours 24 !
C_Kirby
C_Kirby
le 12/06/2003 à 17:09
C_Kirby
Est-ce qu'il y a quelqu'un qui peut m'aider, parce que moi j'y comprends plus rien ?
C_Kirby
C_Kirby
le 13/06/2003 à 08:22
C_Kirby
J'ai réussis, et maintenant ca marche bien !
J'ai envoyé un cookie qui s'appelle sujet_{id_du_sujet} et a chaque fois que je vais sur l'index, je le lis, et ca reprends la même chose que ce que j'avais dis avant. Mais si il y a 50 sujets, si je les lis tous, le cookie ne va pas être un peu lourd ?
C_Kirby
C_Kirby
le 25/06/2003 à 11:51
C_Kirby
Quand j'ai fais les permissions des utilisateurs (enfin, quand j'ai essayé) je vous avez dis que mon script de gestions des messages lus ne marchais pas... J'ai enlever les permissions, et le scripts ne marche toujours pas, y'a encore les dossiers qui s'affichent au hasard (et a chaque fois il y en a que deux)
<? 
session_start();
include ('config.php');
$sql5 = 'SELECT * FROM forum_forums WHERE id="'.$f.'"';
$req5 = mysql_query($sql5) or die('Erreur SQL !<br>'.$sql5.'<br>'.mysql_error());
$data5 = mysql_fetch_array($req5);
$titre_forum = $data5['nom'];
$id_forum = $data5['id'];
mysql_free_result($req5);
?>

<html>
<head>
<? echo '<title>'.$titre_forum.'</title>'; ?>
</head>
<? include('top.php'); ?>
<br>
<!— on place un lien permettant d'accéder à la page contenant le formulaire d'insertion d'un nouveau sujet -->
<?
if (session_is_registered('pseudo_base')) {
echo '<center><a href="./newtopic.php?f='.$f.'">Insérer un sujet</a></center>';
}
else {
echo '';
}
?>
<br>
<br>

<!-- on crée une table html nous permettant de présenter joliment les résultats -->
<center>
<table width="90%" border="1">
<tr>
<td width="2%" align="center" valign="top">&nbsp;</td>
<td width="20%" align="center" valign="top"> Auteur </td>
<td width="50%" align="center" valign="top"> Titre du sujet </td>
<td width="2%" align="center" valign="top">Nb</td>
<td width="26%" align="center" valign="top">Dernière réponse </td>
</tr>
<?
// lancement de la requete
$sql = 'SELECT id, auteur, titre, date_derniere_reponse FROM forum_sujets WHERE correspondance_forum="'.$f.'" ORDER BY date_derniere_reponse DESC';

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

// on va scanner tous les tuples un par un
while ($data = mysql_fetch_array($req)) {
// on récupère les valeurs qui nous intéressent
$id_sujet = $data['id'];
$auteur = $data['auteur'];
$titre = $data['titre'];
$date_derniere_reponse = $data['date_derniere_reponse'];
$permission = $data['permission'];

// on decompose la date
sscanf($date_derniere_reponse, "%4s-%2s-%2s %2s:%2s:%2s", &$annee, &$mois, &$jour, &$heure, &$minute, &$seconde);

// lancement de la requete
$sql2 = 'SELECT * FROM forum_reponses WHERE correspondance_sujet = "'.$id_sujet.'"';

// on lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas bien (or die)
$req2 = mysql_query($sql2) or die('Erreur SQL !<br>'.$sql2.'<br>'.mysql_error());
$reponses = mysql_num_rows($req2);

echo '<tr>';
echo '<td width="100" align="center" valign="top">';

$reponses_cookie = $_COOKIE['sujet_'.$id_sujet.''];
echo $reponses_cookie;
if ($reponses <= $reponses_cookie)
{
if ($reponses < 15)
{
echo '<img src="folders/folder.gif">';
}
else
{
echo '<img src="folders/hot_folder.gif">';
}
}
elseif ($reponses > $reponses_cookie)
{
if ($reponses < 15)
{
echo '<img src="folders/red_folder.gif">';
}
else
{
echo '<img src="folders/hot_red_folder.gif">';
}
}


echo '</td><td width="100" align="center" valign="top">';


// on affiche le nom de l'auteur de sujet
echo $auteur;
echo '</td><td width="300" align="center" valign="top">';

// on affiche le titre du sujet, et sur ce sujet, on insère le lien qui nous permettra de lire les différentes réponses de ce sujet
echo '<a href="./viewtopic.php?f='.$id_forum.'&t='.$id_sujet.'">'.$titre.'</a>';

echo '</td><td width="100" align="center" valign="top">';

// on affiche le nombre de réponse du sujet

echo $reponses;

mysql_free_result ($req2);

echo '</td><td width="100" align="center" valign="top">';

// on affiche la date de la dernière réponse de ce sujet
echo $jour.'-'.$mois.'-'.$annee.' '.$heure.':'.$minute;
echo '</td></tr>';
}
// on libère l'espace mémoire alloué pour cette requête
mysql_free_result ($req);
// on ferme la connection à la base de données.
mysql_close ();
?>
<!—on ferme notre table html -->
</table>
</center>

</body>
</html>

Merci
C_Kirby
C_Kirby
le 25/06/2003 à 11:53
C_Kirby
Et le
echo $reponses_cookie;
c'était pour tester, et ca ne s'affiche que lorsque les dossiers sont jaunes...
C_Kirby
C_Kirby
le 25/06/2003 à 14:29
C_Kirby
setcookie("sujet_$t", "$nbreponses", time()+365*24*3600,"/");
C_Kirby
LA GLOBULE
le 25/06/2003 à 14:56
LA GLOBULE
Nan, mais dis le moi en francais, y a quoi dans le cookie ?
Et comment tu l'utilises ?
XTremTourist
le 25/06/2003 à 17:38
XTremTourist
moi g pas envi de chercher pour la gestion des msg lu j la ferai petre apret les vacance smiley
C_Kirby
le 25/06/2003 à 18:43
C_Kirby
Le nom du cookie pour (par exemple) le sujet 13 (l'id) :
sujet_13
La valeur du cookie pour (par exemple) le sujet 13 (l'id) :
le nombre de messages dans le topic

Et comment je l'utilise ? C'est dans le wall, pour la gestion des messages lus
C_Kirby
Répondre
LoadingChargement en cours