Comunidad de diseño web y desarrollo en internet online

contador dinamico

Citar            
MensajeEscrito el 17 Oct 2008 08:15 pm
Tengo este codigo

Código :

<?php 

   $db = mysql_connect ($host, $usr, $pwd) or die ('Error de Conexion');
   mysql_select_db($bdatos, $db) or ("Error al conectar a la bdatos"); 
   if(isset($_GET['seccion'])){ 

   $sql = "SELECT DISTINCT subseccion FROM productos WHERE seccion = '$seccion' order by subseccion  "; 
   }
$contador = 0;
$result = mysql_query($sql,$db);
      
       if ($myrow = mysql_fetch_array($result)) { 
       do {
            $contador ++;
            $id = $myrow["id"];
            $seccion = $myrow["seccion"];
            $subseccion = $myrow["subseccion"];

if ($contador == 20){

?>
             php
         }else {
         
?>
                 <?php
      }
}while ($myrow = mysql_fetch_array($result));
}
?>


mi te ma es el contador, ya que quiero que me haga dos columnas exactas, esto me sirve si tengo 40 resultados, pero si tengo 44 ya me quedan dispar. Alguien sabe como se puede hacer para que el contador cuenta los resltados y los divida?

Por Romi

40 de clabLevel



 

msie7
Citar            
MensajeEscrito el 17 Oct 2008 09:56 pm

Código :

// codigo anterior
$result = mysql_query($sql,$db);
$total = mysql_num_rows($result); //total de registros, numero para que dividas entre el numero de columnas
$contador = 0;
$filasMax = ceil($total/2)
while ($myrow = mysql_fetch_array($result))
{
   $id = $myrow["id"];
   $seccion = $myrow["seccion"];
   $subseccion = $myrow["subseccion"];
   // La primera tendrá una fila mas en caso de ser impar. Usa floor en vez de ceil en caso contrario
   if ( $contador < $filasMax )
   {
      // codigo de primera columna 
   }
   else 
   {
      // codigo de segunda columna 
   }
        $contador++;
}

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 20 Oct 2008 01:30 pm
Hola! perdon pero soy nueva en esto, me tira un error y no se que puede ser.
Si sabes que puede ser te lo super agradesco.
Saludos.

Por Romi

40 de clabLevel



 

msie7
Citar            
MensajeEscrito el 20 Oct 2008 03:07 pm

Romi escribió:

Hola! perdon pero soy nueva en esto, me tira un error y no se que puede ser.
Si sabes que puede ser te lo super agradesco.
Saludos.


ahhh ya lo solucione, era el ; :oops:

AHORA SI ESTO NO LO PUEDO SOLUCIONAR, SOLO ME MUESTRA UN SOLO RESULTADO EL PRIMERO.
QUE PUEDE SER? AYUDAAA

Por Romi

40 de clabLevel



 

msie7
Citar            
MensajeEscrito el 20 Oct 2008 05:55 pm
Puedes mostrarme como te quedo el código, para ver que esta pasando...

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 20 Oct 2008 06:50 pm
Hola aca va el codigo, en realidad, ahora salio, pero la visualizacion se ve bien en el firefox en el explorer se ve mal
aca va el link por si lo queres visualizar
http://www.redoffice.com.ar/lista.php?seccion=Escritura

Código :

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<table width="746" border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF">
  <tr>
    <td width="746" height="0" valign="top"><?php 
        extract($_GET);
extract($_POST);
include("includes/conexion.php");


   $db = mysql_connect ($host, $usr, $pwd) or die ('Error de Conexion');
   mysql_select_db($bdatos, $db) or ("Error al conectar a la bdatos"); 
   if(isset($_GET['seccion'])){ 

   $sql = "SELECT DISTINCT subseccion FROM productos WHERE seccion = '$seccion' order by subseccion  "; 
   }
$contador = 0;
$result = mysql_query($sql,$db);
$total = mysql_num_rows($result); //total de registros, numero para que dividas entre el numero de columnas

$filasMax = ceil($total/2);

   if ($myrow = mysql_fetch_array($result)) { 
   do{
   $contador ++;
   $id = $myrow["id"];
   $seccion = $myrow["seccion"];
   $subseccion = $myrow["subseccion"];
   if (contador<filasMax){

?>
  <table width="343" height="25" border="0" align="left" cellpadding="0" cellspacing="0">
            <tr>
              <td width="15" height="20"><div align="left"> <img src="images/flecha2.jpg" width="15" height="7" /><span class="info"> </span></div></td>
              <td width="328"><a href="productos.php?subseccion=<?php echo $subseccion ?>"><span class="info"><?php echo $subseccion?></td>
            </tr>
          </table>
        <?php
         }
   else 
   {  
?>
      <table width="373" height="25" border="0" align="right" cellpadding="0" cellspacing="0">
        <tr>
          <td width="16" height="20"><div align="left"><img src="images/flecha2.jpg" width="15" height="7" /></div></td>
          <td width="357"><span class="info"> <a href="productos.php?subseccion=<?php echo $subseccion ?>"><?php echo $subseccion?></a></span></td>
        </tr>
      </table><?php
      }
}while ($myrow = mysql_fetch_array($result));
}/* ------------------------------------------------------------------*/
?>
      <p><span class="info"><a href="productos.php?subseccion=<?php echo $subseccion ?>">
        
    </a></span></p></td></tr>
</table>
</body>
</html>



muchas gracias

Por Romi

40 de clabLevel



 

msie7
Citar            
MensajeEscrito el 20 Oct 2008 07:22 pm
Ok, ya quedo.


Tu problema es de html ahora. Por cada iteración del do..while estas imprimiendo una nueva tabla. Deberías imprimir una nueva fila o columna en dado caso.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 20 Oct 2008 07:59 pm
Si tenes razon, pero me estoy volviendo loca y no logro solucionarlo!!
Alguna idea?

Gracias.

Por Romi

40 de clabLevel



 

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.