TiGeR
Roarr!!!
Enregistré le 16/01/2003
Messages: 3794
Non connecté
|
Sujet : [0.6] Topics fermés en fin de liste
Ajouté le : 21/02/2003 18:25
Message :
Version:
0.6.1 PHP
Description:
Cette petite modification permet d'afficher les topics fermés en fin de liste sur la page affichant tt les topics d'un forum. Pratik si les topics fermés ki n'ont plus bcp d'interêt
Manip:
Dans le fichier list.php, au environ de la ligne 91, il faut rajouter l'élément en orange:
(Normalement ce script est en une ligne ds le fichier, ici g mis des retours à la ligne afin qu'on puisse bien distinguer les éléments)
$resultat = mysql_query("SELECT CF_posts.idpost,CF_posts.sujet,CF_posts.nbrep,CF_posts.nbvues,CF_posts.datederrep,
CF_posts.derposter,CF_posts.idderpost,
CF_posts.icone,CF_posts.idmembre,CF_posts.opentopic,CF_posts.poll, CF_guest.*,CF_user.login
FROM CF_posts
LEFT JOIN CF_guest ON CF_posts.idpost=CF_guest.idguestpost
LEFT JOIN CF_user ON CF_posts.idmembre=CF_user.userid
WHERE CF_posts.parent=0 AND CF_posts.idforum=\"$_GET[forumid]\"
ORDER BY CF_posts.opentopic DESC, CF_posts.datederrep DESC
LIMIT ".$debut.",".$_FORUMCFG[topicparpage]);
Dans la base de données MySql, il y a également quelques modifs à faire pr éviter que ça ne bug (sinon les topics vont être listés dans cet ordre: topic fermé, topic fermé puis rouvert, topic ouvert). Alors pr éviter d'embrouiller les esprits, j'ai créé un petit fichier qui met la base de données à jour. Il est disponible en cliquant ICI. Il faut l'uploader dans le répertoire de votre forum, l'éxécuté, puis le supprimé.
Voilà sa source:
<?
require("secret/connect.php");
$sql = mysql_query("ALTER TABLE CF_posts MODIFY opentopic CHAR(1) NOT NULL default 'Y'");
if($sql) echo("Mise à jour de la table effectuée<br>");
$sql = mysql_query("SELECT idpost,opentopic FROM CF_posts");
if ($sql) echo("Mise à jour des messages en cours...<br>");
while($result=mysql_fetch_array($sql))
{
if (empty($result[opentopic]))
mysql_query("UPDATE CF_posts SET opentopic='Y' WHERE idpost='$result[idpost]'");
}
$sql = mysql_query("SELECT opentopic FROM CF_posts WHERE opentopic=''");
if(mysql_num_rows($sql)==0) echo("Mise à jour terminée!");
?>
@+++
TiGeR
*** Message édité par TiGeR le 21/02/2003 18:31 ***
*** Message édité par TiGeR le 11/03/2004 14:18 ***
CFP : Portail Web basé sur CF
CF Last Posts 0.8 : Derniers messages de votre CF sur votre site
Mods : Générateur de fichiers hackés pour CF
|