Foros del Web » Programando para Internet » PHP »

Mostrando noticias php

Estas en el tema de Mostrando noticias php en el foro de PHP en Foros del Web. Hola amigos mi problema pasa por los siguiente quiero mostrar mis noticias en una tabla de 2 X 2 logre que me mostrara pero de ...
  #1 (permalink)  
Antiguo 30/05/2010, 15:03
 
Fecha de Ingreso: septiembre-2009
Mensajes: 281
Antigüedad: 14 años, 7 meses
Puntos: 0
Pregunta Mostrando noticias php

Hola amigos mi problema pasa por los siguiente quiero mostrar mis noticias en una tabla de 2 X 2 logre que me mostrara pero de una manera muy rara Me las muestra repitiendo la misma noticias 2 veces en una misma fila ????

http://img190.imageshack.us/img190/7461/noticiasjn.png

Este es mi codigo.
Código PHP:
Ver original
  1. <?php  
  2. include('conectar.php');
  3. $link=Conectarse();
  4. $categoria = $_GET['categoria'];
  5. $listado = mysql_query("select * from noticia where categoria='$categoria' and estado=1 order by id desc LIMIT 1");
  6.  $nfilas = mysql_num_rows ($listado);
  7.  
  8. $result=mysql_query("Select * From noticia WHERE id='$id' LIMIT 1");
  9. $row=mysql_fetch_array($result);
  10.  
  11.       if ($nfilas > 0)
  12.       {
  13.  
  14. ?>
  15. <style type="text/css">
  16. <!--
  17. .Estilo1 {color: #FF0000}
  18. -->
  19. </style>
  20.  <?php     
  21.            while($row = mysql_fetch_array($listado)){
  22. ?>
  23.  
  24.   <table align="center">
  25.     <tr><td>
  26.                <table  border="0" align="center">
  27.                     <tr>
  28.                     <td colspan="0" align="center"><h2><span class="Estilo1"><?php echo $row['titulo']; ?></span></h2>
  29.                        
  30.                      
  31.                         <?php
  32.                        
  33.                              if (empty($row['foto'])){
  34.                              ?>
  35.                               <img align= "absmiddle" border="0" style=" margin-right:10px; float:left;" src="modulos/noticias/vistas/fotos/defecto.jpg" width="80" height="80" align="left">  
  36.                              
  37.                               <?php
  38.                               } else{
  39.                             ?>
  40.                              <img  align="absmiddle" border="0" style=" margin-right:10px; float:left;" src="modulos/noticias/vistas/fotos/<? echo strip_tags($row['foto']) ?>" width="80" height="80" align="left">
  41.                             <?php }?>
  42.                            
  43.                        
  44.                         <div align="justify"><?php echo $row['texto_corto']; ?> </div></td>
  45.                         <?php echo $row['fecha_publicacion']; ?> <a href="index.php?mod=noticias&pag=leer_noticia&id=<?php echo $row['id']; ?> ">Leer más..</a></td>
  46.                                   </tr>
  47.                        
  48.                                   </table>
  49.                                  
  50.         </td>
  51.         <td>
  52.        
  53.        
  54.                                   <table  border="0" align="center">
  55.                     <tr>
  56.                     <td colspan="0" align="center"><h2><span class="Estilo1"><?php echo $row['titulo']; ?></span></h2>
  57.                        
  58.                      
  59.                         <?php
  60.                        
  61.                              if (empty($row['foto'])){
  62.                              ?>
  63.                               <img align= "absmiddle" border="0" style=" margin-right:10px; float:left;" src="modulos/noticias/vistas/fotos/defecto.jpg" width="80" height="80" align="left">  
  64.                              
  65.                               <?php
  66.                               } else{
  67.                             ?>
  68.                              <img  align="absmiddle" border="0" style=" margin-right:10px; float:left;" src="modulos/noticias/vistas/fotos/<? echo strip_tags($row['foto']) ?>" width="80" height="80" align="left">
  69.                             <?php }?>
  70.                            
  71.                        
  72.                         <div align="justify"><?php echo $row['texto_corto']; ?> </div></td>
  73.                         <?php echo $row['fecha_publicacion']; ?> <a href="index.php?mod=noticias&pag=leer_noticia&id=<?php echo $row['id']; ?> ">Leer más..</a></td>
  74.                                   </tr>
  75.                        
  76.                                   </table>
  77. <?php
  78.          }
  79.         ?>
  80.            
  81.            
  82.         <?php  
  83.      
  84.         mysql_free_result($listado);
  85.          }
  86.       else
  87.       echo (" <center> No existen noticias Publicadas... </center>");
  88.       mysql_close($link);
  89.  
  90.  
  91.  
  92. ?>
  93.  
  94. </table>
Espero me pueda ayudar Gracias
  #2 (permalink)  
Antiguo 30/05/2010, 15:28
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Mostrando noticias php

Hola

Es un problema de maquetación. Puedes usar un ciclo o mod (creo que se llama, al menos en así es en ASP)

Código PHP:
Ver original
  1. if ($nfilas &#37; 2 == 0) {
  2. echo '</tr><tr>'
  3. ]

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 30/05/2010, 15:41
 
Fecha de Ingreso: septiembre-2009
Mensajes: 281
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Mostrando noticias php

Graicas Adler pero no entiendo bien por favor podrias ser un poco mas explicito hice esto
http://img576.imageshack.us/img576/102/noticiasq.png

Y puse DISTINCT A MI CONSULTa pensado que eso me lo iba a solucionar pero nno es asi me sigue repitiendo en en misma fila la misma notcia ??
Código PHP:
Ver original
  1. $categoria = $_GET['categoria'];
  2. $listado = mysql_query("select DISTINCT * from noticia where categoria='$categoria' and estado=1 order by id desc LIMIT 1");
  3. $nfilas = mysql_num_rows ($listado);
  4.  
  5. $result=mysql_query("Select * From noticia WHERE id='$id' LIMIT 1");
  6. $row=mysql_fetch_array($result);
  7.  
  8.       if ($nfilas > 0)
  9.       {
  10.  
  11. ?>
  12. <style type="text/css">
  13. <!--
  14. .Estilo1 {color: #FF0000}
  15. -->
  16. </style>
  17.  <?php     
  18.            while($row = mysql_fetch_array($listado)){
  19. ?>
  20.  
  21.   <table align="center" width="700" height="500" >
  22.     <tr><td>
  23.                <table>
  24.                 <tr>
  25.                 <td colspan="0" align="center"><h2><span class="Estilo1"><?php echo $row['titulo']; ?></span></h2></td>
  26.                 </tr>
  27.                 <tr>
  28.                 <td >
  29.  
  30. <?php
  31.          }
  32.         ?>
  33.            
  34.            
  35.         <?php  
  36.      
  37.         mysql_free_result($listado);
  38.          }
  39.       else
  40.       echo (" <center> No existen noticias Publicadas... </center>");
  41.       mysql_close($link);
  42.  
  43.  
  44.  
  45. ?>
  46.  
  47. </table>

Resumi en codigo para no extenderlo mucho No se que puedo estar haciendo mal en mi consulta ? o es en mis condiciones ?
  #4 (permalink)  
Antiguo 30/05/2010, 15:44
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrando noticias php

te sugiero leer el siguiente tema:
http://www.forosdelweb.com/f18/aport...tablas-618528/
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 30/05/2010, 15:58
 
Fecha de Ingreso: septiembre-2009
Mensajes: 281
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Mostrando noticias php

Gracias pateketrueke hice la prueba pero la verdad no logro entender muy bien esta parte a mi problema.
Código PHP:
Ver original
  1. while ($inicial < $total)
  2. {
  3.   echo '<td>';
  4.  
  5.   // rutinas...
  6.   echo "$inicial,$filas";
  7.  
  8.  
  9.   echo '</td>';
  10.  
  11.   // break!
  12.   if (++$inicial == $columnas)
  13.   {
  14.         if (!(--$filas))
  15.       {
  16.          break;
  17.       }

En esta parte echo "$inicial,$filas"; mas exactamente ?? La verdad pense que solamente era un problema de consulta php o de condicion pero veo ahora q es un poco mas complicado ?? o eso creo
  #6 (permalink)  
Antiguo 30/05/2010, 16:08
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrando noticias php

deberías iterar normalmente -sin tablas- tu resultado, así comprobarías de una ves por todas...

puede que sea un problema de consulta, pero no lo sabremos si no lo analizas... ;)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 30/05/2010, 16:53
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: Mostrando noticias php

Hola

Mira este sería un ejemplo valido, siempre que no sea un problema en la consulta como dice @paketetureke. Claro está también es valido el suyo

Código PHP:
Ver original
  1. <html>
  2. <head>
  3. </head>
  4. <body>
  5. <table align="center">
  6.  
  7. <?php    
  8. for($j=0; $j <=10; $j++) {
  9. if ($j &#37; 2 == 0) {
  10. echo '</td></tr><tr><td>';
  11. }
  12. ?>
  13. <table border="1">
  14. <tr>
  15. <td>
  16. una prueba
  17.  </td>
  18. </tr>
  19. </table>
  20. <?php
  21. if ($j % 2 == 0) {
  22. echo '</td><td>';
  23. }
  24. }
  25. ?>
  26. </td>
  27. </tr>
  28. </table>
  29. </body>
  30. </html>

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />

Etiquetas: Ninguno
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 16:50.