Foros del Web » Programando para Internet » PHP »

condicionar si existe topic para mostrar

Estas en el tema de condicionar si existe topic para mostrar en el foro de PHP en Foros del Web. buenas, como están ? Espero que me puedan ayudar.. He conseguido un código PHP para colocar el primer topic de cierto foro que he creado ...
  #1 (permalink)  
Antiguo 18/03/2010, 20:34
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 10 meses
Puntos: 0
condicionar si existe topic para mostrar

buenas, como están ?

Espero que me puedan ayudar..

He conseguido un código PHP para colocar el primer topic de cierto foro que he creado en mi integración de phpBB3 hacia mi web; este codigo funciona bastante bien.
Ahora bien, lo que quiero hacer es que este campo se mantenga oculto mientras el topic no haya sido creado (no exista), y que cuando se cree entonces si se muestre en pantalla.

Gracias por adelantado
Aquí les dejo los códigos usados
Código PHP:
Ver original
  1. <h1>&raquo; Noticias</h1>
  2.  
  3. <div align="justify">
  4. <?php
  5. //
  6. // Configuration
  7. //
  8. $forum_id = 1;        //Forum ID to pull posts from
  9. $num_posts = 7;        //Number of posts to display
  10.  
  11. //
  12. // Auth
  13. //
  14. $can_read_forum = $auth->acl_getf('f_read');    //Get the forums the user can read from
  15. $forum_id_ary = array_keys($can_read_forum);    //Rework the array some
  16. unset($can_read_forum);
  17.  
  18. //
  19. // Recent posts
  20. //
  21. if(array_key_exists($forum_id, $forum_id_ary))    //See if the user is authed to read from that forum
  22. {
  23.     $sql = 'SELECT p.post_id, t.topic_id, t.topic_replies, t.topic_views, p.post_subject, p.post_text, p.post_time, p.bbcode_bitfield, p.bbcode_uid, u.username
  24.            FROM ' . TOPICS_TABLE . ' t  
  25.                INNER JOIN ' . POSTS_TABLE . ' p ON (t.topic_id = p.topic_id)
  26.                    INNER JOIN ' . USERS_TABLE . ' u ON (p.poster_id = u.user_id)
  27.                        WHERE t.topic_approved = 1
  28.                            AND p.post_approved = 1
  29.                            AND p.forum_id = ' . $forum_id . '  
  30.                            AND p.post_id = t.topic_first_post_id
  31.                        ORDER BY p.post_time DESC';
  32.  
  33.     $result = $db->sql_query_limit($sql, $num_postsn);
  34.     $row = $db->sql_fetchrowset($result);
  35.  
  36.     for($i = 0; $i < $num_posts; $i++)
  37.     {
  38.         $post_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $forum_id . '&amp;t=' . $row[$i]['topic_id'] . '&amp;p=' . $row[$i]['post_id'] . 'p' . $row[$i]['post_id']);
  39.  
  40. //-----------------+
  41.       $views = $row[$i]['topic_views'];
  42.       $reply = $row[$i]['topic_replies'];
  43. //-----------------+
  44.         $uid = $bitfield = $options = '';
  45.         $allow_bbcode = $allow_smilies = $allow_urls = true;
  46.         $flags = (($allow_bbcode) ? OPTION_FLAG_BBCODE : 0) + (($allow_smilies) ? OPTION_FLAG_SMILIES : 0) + (($allow_urls) ? OPTION_FLAG_LINKS : 0);
  47.  
  48.  
  49.         $message = generate_text_for_display($row[$i]['post_text'], $row[$i]['bbcode_uid'], $row[$i]['bbcode_bitfield'], $flags);
  50. //        $reply = generate_text_for_display( $row[$i]['topic_replies'], $flags);
  51.  
  52.         echo '<div width="90%"><span class="titulo">&nbsp;&nbsp;' . censor_text($row[$i]['post_subject']) . '</span>
  53.              <br><span class="subtitulo">&nbsp;&nbsp;Escrito por <b><u><span title="' . $row[$i]['username'] . '">' . $row[$i]['username'] . '</span></u></b> el ' . date('d/m/Y [G:i]', $row[$i]['post_time']) . '</span><br>
  54.              <div class="contenido">' . $message . '</div><br>&nbsp;&nbsp;<a href="' . $post_url . '"  target=\"_blank\">Leer todo</a> | ' . $reply .' Comentarios | '. $views .' Visitas<br>
  55. <hr size=1>
  56.                </div>';
  57.     }
  58.  
  59.     $db->sql_freeresult($result);  
  60. }
  61. ?>
  62. <p align="center"><a href="foros/viewforum.php?f=1" target="_blank">Ver Todas Las Noticias</a></p>      
  63. </div>
  #2 (permalink)  
Antiguo 18/03/2010, 20:48
 
Fecha de Ingreso: abril-2007
Ubicación: Tandil, Bs As, Argentina
Mensajes: 106
Antigüedad: 17 años, 7 meses
Puntos: 2
Respuesta: condicionar si existe topic para mostrar

Suponiendo que el array_key_exists funciona como debe, eso te crearia todo el codigo solo de existir las variables que le estas dando..

Probaste con el tag hidden del style? <DIV STYLE='visibility:hidden;'>
O poniendole un else, o alguna funcion de javascript? No entiendo bien que es lo que te mostraria el codigo si no se cumple la condicion de arriba, tecnicamento solo deberia mostrarte el link que muestra todas las noticias..

Aclara eso por favor a ver si te puedo dar una mano..
  #3 (permalink)  
Antiguo 19/03/2010, 08:20
 
Fecha de Ingreso: enero-2009
Mensajes: 10
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: condicionar si existe topic para mostrar

Gracias por responder Megcapkill, tienes razón cuando dices que "array_key_exists funciona como debe", cometí la NOVATADA de introducir el código dentro de una tabla, cuando lo que debí hacer es introducir la tabla dentro del código para condicionar la visualización de la tabla también.

Me ayudaste, gracias

Última edición por 125Vanessa; 19/03/2010 a las 08:26

Etiquetas: existe
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 22:31.