Foros del Web » Creando para Internet » Sistemas de gestión de contenidos »

Ultimos mensajes del foro, eliminar los mensajes de los foros privados

Estas en el tema de Ultimos mensajes del foro, eliminar los mensajes de los foros privados en el foro de Sistemas de gestión de contenidos en Foros del Web. Hola todos. Dispongo del siguiente código para mostrar los últimos mensajes que se publican en un foro phpbb2. Hasta aquí todo bien. Pero me gustaría ...
  #1 (permalink)  
Antiguo 29/04/2004, 11:29
 
Fecha de Ingreso: julio-2003
Mensajes: 124
Antigüedad: 20 años, 10 meses
Puntos: 0
Ultimos mensajes del foro, eliminar los mensajes de los foros privados

Hola todos.

Dispongo del siguiente código para mostrar los últimos mensajes que se publican en un foro phpbb2. Hasta aquí todo bien. Pero me gustaría o más bien es necesario que no muestre los mensajes de los foros privados.

El código es el siguiente:

--------------------
<?php
$urlPath = "foros/";
$topicnumber = 8;
include $urlPath."config.php";
$table_topics = $table_prefix. "topics";
$table_forums = $table_prefix. "forums";
$table_posts = $table_prefix. "posts";
$table_users = $table_prefix. "users";
$link = mysql_connect("$dbhost", "$dbuser", "$dbpasswd") or die("Could not connect");
mysql_select_db("$dbname") or die("Could not select database");
$query = "SELECT t.topic_id, t.topic_title,
t.topic_last_post_id, t.forum_id, p.post_id, p.poster_id,
p.post_time, u.user_id, u.username FROM $table_topics t,
$table_forums f, $table_posts p, $table_users u WHERE
t.topic_id = p.topic_id AND
f.forum_id = t.forum_id AND
t.topic_status <> 2 AND
p.post_id = t.topic_last_post_id AND
p.poster_id = u.user_id
ORDER BY p.post_id DESC LIMIT $topicnumber";
$result = mysql_query($query) or die("Query failed");
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {

echo "";
echo "<tr valign=top><td><IMG SRC=img/punt2.gif ";
echo "BORDER=0 width=13 height=12></td>";
echo "<td><a CLASS=not-link href=\"$urlPath/viewtopic.php? topic=$row[topic_id]&forum=$row[forum_id]\">".$row ["topic_title"]."</a></td></tr>";
echo "";

}
mysql_free_result($result);
mysql_close($link);
?>
-----------------------------------------

¿Alguna pista?
  #2 (permalink)  
Antiguo 29/04/2004, 12:10
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 11 meses
Puntos: 16
Hola,

La manera "rapida" seria conociendo el id de los foros privados añadirle un

and t.forum_id NOT IN (2,6,43) ORDER BY ...

Al final de tu where, suponiendo que los id de los foros privados son 2, 6 y 43.

El problema de este "apaño" es que cuando privatices o desprivatices un foro, tendrias que modificar ese codigo.

La forma "buena" seria comprobar de alguna forma si el foro es privado. Como no conozco el esquema de phpBB, no se si sera simplemente comprobar el valor de un campo de la tabla de foros, o esta en otra tabla.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 29/04/2004, 12:31
 
Fecha de Ingreso: julio-2003
Mensajes: 124
Antigüedad: 20 años, 10 meses
Puntos: 0
Fantástico!!

Gracias Josemi

Nos vemos por foro buscadores !!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:21.