Foros del Web » Programando para Internet » PHP »

Mostrar noticias en tablas como columnas

Estas en el tema de Mostrar noticias en tablas como columnas en el foro de PHP en Foros del Web. Hola gente: Explico mi problema a ver quien me puede ayudar, tengo este scrip que me muestra la noticias en columnas, además pagina los resultados, ...
  #1 (permalink)  
Antiguo 18/10/2006, 10:34
 
Fecha de Ingreso: diciembre-2004
Mensajes: 103
Antigüedad: 19 años, 5 meses
Puntos: 0
Mostrar noticias en tablas como columnas

Hola gente:
Explico mi problema a ver quien me puede ayudar, tengo este scrip que me muestra la noticias en columnas, además pagina los resultados, etc, el tema es que cuando tengo una noticia larga y otra corta, en la celda corta deja un espacio en blanco lógicamente mantiniendo la linea de la fila correspondiente.
Calculo que para que no sucededa esto, hay que modificar el php para que en ves de que me muestre cada noticia en una celda, lo haga con una tabla. Dejo el código completo y agradezco desde ya su ayuda.

Código:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="estilo.css">
</head>

<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="100%" border="0" cellpadding="0" cellspacing="18">
  <tr> 
    <td><?
include ("coneccion.php");
$coneccion = mysql_connect($host_db, $user_db, $pass_db);
mysql_select_db($base_db, $coneccion);
?> <?
//Este script esta hecho para el sistema de noticias con 1 tabla se puede modificar para que
//funcione con el de dos tablas
$sql = "select * from noticias, tipo_noticias where cod_tipo_noticia = id_tipo_noticia";

//cantidad de resultados por página (opcional, por defecto 20)
$cuantos = 9;

//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
include("paginator.inc.php");

?> 
      <table width='100%' border='0' cellpadding='5' cellspacing='0'>
        <tr valign='top'> <?
$m = 0; # contador
$columnas = 3; #numero de celdas

if (($rows=mysql_num_rows($result))==0) { 
?> 
          <td>No hay resultados en la BD.</td>
          <? 
} else {
} 

for ($i=1; $myrow = mysql_fetch_array ($result); $i++) {  
$m++; #incrementamos contador
?> 
          <td width='50%'> <span class='subtitulon'><? echo "$myrow[subtitulo]" ; ?></span><br>
            <span class='titulon'><? echo "$myrow[titulo]"; ?></span><br>
            <?
$imagen = $myrow['imagen'];
if(file_exists("imagenes/$imagen")) { // se va como include se puede cambiar el nivel del directorio y con otro nombre
echo "<img src='imagenes/$imagen' border='0' align='left' hspace='7'>";  // se va como include se puede cambiar el nivel del directorio y con otro nombre
}
?> <span class='texton'><? echo "$myrow[text1]"; ?></span> 
            <hr size='1'>
          </td>
          <?
if($m == $columnas)
{
?> </tr>
        <tr> <?
   $m = 0; #Ponemos contador a cero  
}

}
?> 
      </table>
      <?
echo"".$navegacion."";
?></td>
  </tr>
</table>
<div align="center"></div>
</body>
</html>
  #2 (permalink)  
Antiguo 18/10/2006, 10:47
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 8 meses
Puntos: 55
primero q nada esto no es php es html, y segudno podrias haber intentado un poquito ocmo solucionarlo solo, no es dificil, ahi te deje en negrita q tenes q agregar para q haga lo q queres


<table width="100%" border="0" cellpadding="0" cellspacing="18">
<tr>
<td><?
include ("coneccion.php");
$coneccion = mysql_connect($host_db, $user_db, $pass_db);
mysql_select_db($base_db, $coneccion);
?> <?
//Este script esta hecho para el sistema de noticias con 1 tabla se puede modificar para que
//funcione con el de dos tablas
$sql = "select * from noticias, tipo_noticias where cod_tipo_noticia = id_tipo_noticia";

//cantidad de resultados por página (opcional, por defecto 20)
$cuantos = 9;

//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
include("paginator.inc.php");

?>
<table width='100%' border='0' cellpadding='5' cellspacing='0'>
<tr valign='top'> <?
$m = 0; # contador
$columnas = 3; #numero de celdas

if (($rows=mysql_num_rows($result))==0) {
?>
<td>No hay resultados en la BD.</td>
<?
} else {
}

for ($i=1; $myrow = mysql_fetch_array ($result); $i++) {
$m++; #incrementamos contador
?>
<td width='50%'> <table><tr><td><span class='subtitulon'><? echo "$myrow[subtitulo]" ; ?></span><br>
<span class='titulon'><? echo "$myrow[titulo]"; ?></span><br>
<?
$imagen = $myrow['imagen'];
if(file_exists("imagenes/$imagen")) { // se va como include se puede cambiar el nivel del directorio y con otro nombre
echo "<img src='imagenes/$imagen' border='0' align='left' hspace='7'>"; // se va como include se puede cambiar el nivel del directorio y con otro nombre
}
?> <span class='texton'><? echo "$myrow[text1]"; ?></span> </td></tr></table>
<hr size='1'>
</td>
<?
if($m == $columnas)
{
?> </tr>
<tr> <?
$m = 0; #Ponemos contador a cero
}

}
?>
</table>
<?
echo"".$navegacion."";
?></td>
</tr>
</table>
  #3 (permalink)  
Antiguo 18/10/2006, 11:05
 
Fecha de Ingreso: diciembre-2004
Mensajes: 103
Antigüedad: 19 años, 5 meses
Puntos: 0
Sigue pasando lo mismo con los "blancos". Lo que has hecho es dentro de la celda agregar un tabla, eso obviamente lo probe y me da el mismo resultado que el codigo anterior, lo que busco es ayuda para modificar el codigo PHP, no html para que cada noticia se muestre en una tabla y asi evitar el resultado de las filas con noticias de distinto tamaño.
Igualemnte agradecido y dejo la inquietud.
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 23:07.