Foros del Web » Programando para Internet » PHP »

Columnas

Estas en el tema de Columnas en el foro de PHP en Foros del Web. Hola, Tengo el siguiente codigo el cual me muestra 3 colunmas en la consulta Código PHP: <table width="100%" border="0" cellpadding="0" cellspacing="0">          <?php  if( $location_sort )  {      $sort1  ...
  #1 (permalink)  
Antiguo 24/11/2008, 04:44
 
Fecha de Ingreso: mayo-2003
Mensajes: 92
Antigüedad: 20 años, 10 meses
Puntos: 0
Columnas

Hola,

Tengo el siguiente codigo el cual me muestra 3 colunmas en la consulta

Código PHP:
<table width="100%" border="0" cellpadding="0" cellspacing="0">
        <?php 

if($location_sort
{
    
$sort1 "ORDER BY countryname";
}
else
{
    
$sort1 "ORDER BY c.pos";
}      

$sql "SELECT * FROM $t_countries c INNER JOIN $t_cities ct ON c.countryid = ct.countryid AND ct.enabled = '1' WHERE c.enabled = '1' GROUP BY c.countryid $sort1";
$resc mysql_query($sql);

$i 0;



while(
$country mysql_fetch_array($resc))
{

    
$i++;

    if (
$i%$dir_cols == || $dir_cols == 1) echo "<tr>";

       
$cell_width round(100/$dir_cols);
    
    if(
$sef_urls$country_url "$country[countryid]/" RemoveBadURLChars($country['countryname']) . "/";
    else 
$country_url "?cityid=-$country[countryid]&amp;lang=$xlang";
    
    
?>
        <td width="<?php echo $cell_width?>%"> <img style="vertical-align: middle" src="images/bullet.gif" alt="" border="0"> 
          <a href="$country_url"><?php echo $country['countryname']; ?></a> </td>
        <?php 
                    
if ($i%$dir_cols == 0) echo "</tr>";
                    }
                    
                    
?>
      </table>
Me gustaria que se mostraran solo 2 columnas y no 3

Si por favor me podeis enseñar o guiar un poco os lo agradeceria

He probado con todas la variables al tun tun y no lo he conseguido al 100%, ya que si he conseguido que se muestren 2 columnas, pero mete un TR en lugar inapropiado y en la columna de la derecha en una linea salen 2 resultados y en la siguiente solo 1 ,y sucesivamente

Me podeis ayudar a entenderlo?

Gracias
  #2 (permalink)  
Antiguo 24/11/2008, 04:57
 
Fecha de Ingreso: agosto-2007
Mensajes: 46
Antigüedad: 16 años, 7 meses
Puntos: 1
Respuesta: Columnas

Por lo pronto: ¿dónde tienes iniciada la variable $dir_cols hasta que la usas por primera vez? Y otra cosa que puedes probar es no mostrar con un ECHO el comienzo ni el final del <tr>. Te recomiendo guardarlas en una variable como una cadena y mostrarlo todo al final.
  #3 (permalink)  
Antiguo 24/11/2008, 16:39
 
Fecha de Ingreso: mayo-2003
Mensajes: 92
Antigüedad: 20 años, 10 meses
Puntos: 0
Respuesta: Columnas

Resuelto!

Código PHP:
 <?php 

if($location_sort
{
    
$sort1 "ORDER BY countryname";
}
else
{
    
$sort1 "ORDER BY c.pos";
}      

$sql "SELECT * FROM $t_countries c INNER JOIN $t_cities ct ON c.countryid = ct.countryid AND ct.enabled = '1' WHERE c.enabled = '1' GROUP BY c.countryid $sort1";
$resc mysql_query($sql);

$tr=1;
$columnas =2;

while(
$country mysql_fetch_array($resc))
{

    if(
$tr/($columnas+1)==1){echo "</tr><tr>";
            
$tr=1;
        }
    
    if(
$sef_urls$country_url "{$vbasedir}-$country[countryid]/" RemoveBadURLChars($country['countryname']) . "/";
    else 
$country_url "?cityid=-$country[countryid]&amp;lang=$xlang";
    
    
?>
        <td> 
        <img style="vertical-align: middle" src="images/bullet.gif" alt="" border="0"> 
        <a href="$country_url"><?php echo $country['countryname']; ?></a> 
        </td>
        <?php
$tr
++;
if(
$tr/($columnas+2)==1){echo "</tr>";}
}
 while (
$tr <= $columnas):
     echo 
"<td>&nbsp;</td>";
     
$tr++;
 endwhile;
mysql_free_result($r);
?>
Saludos
  #4 (permalink)  
Antiguo 24/11/2008, 22:48
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: Columnas

http://www.forosdelweb.com/f18/aport...tablas-618528/

y eso que nadie busca.... suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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 09:44.