Foros del Web » Programando para Internet » PHP »

Hacer Numeracion de objetos

Estas en el tema de Hacer Numeracion de objetos en el foro de PHP en Foros del Web. Saludos, Tengo un catalogo de productos donde me lista una cantidad X de productos.. donde bien me muestra en una de las celdas el numero ...
  #1 (permalink)  
Antiguo 15/07/2008, 08:22
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 7 meses
Puntos: 28
Hacer Numeracion de objetos

Saludos,

Tengo un catalogo de productos donde me lista una cantidad X de productos.. donde bien me muestra en una de las celdas el numero en orden creciente..

1 2 3
4 5 6
7 8 9


pero quiero q me lo muestre es 01 02 03

como logre la numeracion???

bueno aqui les dejo..

Código PHP:
$num$num 1//aqui declaro mi variable para el conteo

<td width='44' class=''><span class='textoNUMEROS'>".$num."</span></td//imprimo el conteo 
si alguien sabe como hacer para q en vez de 1 2 3, me cuente 01 02 03 04 y obviamente cuando llegue a 10 no me haga 010 ...

Gracias
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #2 (permalink)  
Antiguo 15/07/2008, 08:41
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Hacer Numeracion de objetos

te paso una función para tu librería...

Código PHP:
/**
 * (numero[, maximo])
 *
 * Devuelve el numero formateado, con el maximo de ceros a la izquierda.
 */
function npad($num$max 0)
{
    return 
str_pad($num$max'0'STR_PAD_LEFT);

su uso es fácil...

Código PHP:
echo npad(1,2); // 01 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 15/07/2008, 08:48
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 7 meses
Puntos: 28
Respuesta: Hacer Numeracion de objetos

mira lo q me sale

Fatal error: Cannot redeclare npad() (previously declared in C:\wamp\www\albarracin\inmuebles_inc.php:43) in C:\wamp\www\albarracin\inmuebles_inc.php on line 43


Código PHP:
                function npad($num$max 0)
{
    return 
str_pad($num$max'0'STR_PAD_LEFT);

                
echo 
"<td align='center'>
    <table width='224' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td colspan='2' height='214' bgcolor='#DCDBA0' align='center'><table width='135' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td height='170' align='center' valign='middle' bgcolor='#C1AC6C'><img src='images2/"
.$row['imgprinc']."' width='125' height='160' border='0'/></td>
  </tr>
</table></td>
  </tr>
  <tr>
    <td height='78' width='180' bgcolor='#E8E7C1'><table width='95%' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td><span class='descPRODUCTOS'><div align='justify'>"
.$row['titulo']."</div></span></td>
  </tr>
</table></td>
    <td width='44' class='' align='center' valign='middle'><span class='textoNUMEROS'>"
.$num."</span></td>
  </tr>
  <tr>
    <td colspan='2' align='center'><img src='logo/"
.$row['logo']."' width='224'/><br></td>
  </tr>
</table> 
este es el pedazo de la declaracion e impresion!!!
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #4 (permalink)  
Antiguo 15/07/2008, 08:58
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 7 meses
Puntos: 28
Respuesta: Hacer Numeracion de objetos

elimine el error.. pero ahora me hace pur 01

Código PHP:
<?php include('conect.php');

// Variables de Configuración -----------------------------------
// Define el numero de Filas
$n_filas=3;

//***************************************************************
@$cat=$_REQUEST['id'];
//$cat=8;

$fotos = array();
        
$sql="SELECT * FROM productos ORDER BY id ASC";
mysql_select_db ('conect');
    
$sql_exec=mysql_query($sql);

$tottal=113;
// ------------------------------------------------------------------------------------------------------------------
$vert=$tottal/$n_filas;
$vert=round($vert);

                function 
npad($num$max 0)
{
    return 
str_pad($num$max'0'STR_PAD_LEFT);


?>
<link href="css/estilo.css" rel="stylesheet" type="text/css" />

<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
  <!--DWLayoutTable-->

       
 
        <?php
        $a
=0;// Colocando el contador horizontal en 0
        
$i=1;// Colocando el contador vertical en 0
        
$w=0;//Colocando un contador para el mensaje de "No hay articulos en esta acategoria"
        
            
while($row=mysql_fetch_assoc($sql_exec)){
            
$w=w+1;
                if (
$a==0){
                echo 
'<tr>';
                }
                
$a=$a+1;
                
$fotos[$i.'-'.$a] = $row['imgprinc'];
                
                
$num$num 1;

                
echo 
"<td align='center'>
    <table width='224' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td colspan='2' height='214' bgcolor='#DCDBA0' align='center'><table width='135' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td height='170' align='center' valign='middle' bgcolor='#C1AC6C'><img src='images2/"
.$row['imgprinc']."' width='125' height='160' border='0'/></td>
  </tr>
</table></td>
  </tr>
  <tr>
    <td height='78' width='180' bgcolor='#E8E7C1'><table width='95%' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td><span class='descPRODUCTOS'><div align='justify'>"
.$row['titulo']."</div></span></td>
  </tr>
</table></td>
    <td width='44' class='' align='center' valign='middle'><span class='textoNUMEROS'>"
.npad(1,2)."</span></td>
  </tr>
  <tr>
    <td colspan='2' align='center'><img src='logo/"
.$row['logo']."' width='224'/><br></td>
  </tr>
</table>
</td>    
"
;
            
                
$r=$a;// contador remanente para listar imagenes sin exceso
                
                    
if ($a >= $n_filas) {
                    
$a=0;// reiniciando el contador horizontal
                    
$i=$i+1;// aumentando el contador vertical
                    
echo '</tr><td></td>';
                    } 
            if (empty(
$row)) {
        echo
"
        texto de que no hay
        "
;
        break 
1;}
            
            }
            
        
?>
</table>
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #5 (permalink)  
Antiguo 15/07/2008, 09:13
 
Fecha de Ingreso: junio-2007
Ubicación: por ahi
Mensajes: 262
Antigüedad: 16 años, 9 meses
Puntos: 4
Respuesta: Hacer Numeracion de objetos

Realmente no hay que inventar el agua tibia, y si existen ya funciones en PHP para hacer que te queden 01, 02, 03....etc debes usarlas, son mas rapidas.


existen varias posibilidades. Yo programo en C y C++ tambien por eso se que existe esta forma:


Código PHP:
Ejemplo

$variable 
1;
printf("%02d"$variable);// donde $variable es la variable a imprimir 
__________________
Hernando Saenz Sanchez
  #6 (permalink)  
Antiguo 15/07/2008, 09:20
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 7 meses
Puntos: 28
Respuesta: Hacer Numeracion de objetos

d verdad no entendi mucho tu funcion hernandos.... lo hice y me muestra en todos mis productos un 1 ... es decir no numera ni muestra de la forma 01,02,03

Código PHP:
<?php include('conect.php');

// Variables de Configuración -----------------------------------
// Define el numero de Filas
$n_filas=3;

//***************************************************************
@$cat=$_REQUEST['id'];
//$cat=8;

$fotos = array();
        
$sql="SELECT * FROM productos ORDER BY id ASC";
mysql_select_db ('conect');
    
$sql_exec=mysql_query($sql);

$tottal=113;
// ------------------------------------------------------------------------------------------------------------------
$vert=$tottal/$n_filas;
$vert=round($vert);

                
/*function npad($num, $max = 0)
{
    return str_pad($num, $max, '0', STR_PAD_LEFT);
} */

$variable 1
printf("%02d"$variable);

?>
<link href="css/estilo.css" rel="stylesheet" type="text/css" />

<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
  <!--DWLayoutTable-->

       
 
        <?php
        $a
=0;// Colocando el contador horizontal en 0
        
$i=1;// Colocando el contador vertical en 0
        
$w=0;//Colocando un contador para el mensaje de "No hay articulos en esta acategoria"
        
            
while($row=mysql_fetch_assoc($sql_exec)){
            
$w=w+1;
                if (
$a==0){
                echo 
'<tr>';
                }
                
$a=$a+1;
                
$fotos[$i.'-'.$a] = $row['imgprinc'];
                
                
$num$variable 1;

                
echo 
"<td align='center'>
    <table width='224' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td colspan='2' height='214' bgcolor='#DCDBA0' align='center'><table width='135' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td height='170' align='center' valign='middle' bgcolor='#C1AC6C'><img src='images2/"
.$row['imgprinc']."' width='125' height='160' border='0'/></td>
  </tr>
</table></td>
  </tr>
  <tr>
    <td height='78' width='180' bgcolor='#E8E7C1'><table width='93%' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td><span class='descPRODUCTOS'><div align='justify'>"
.$row['titulo']."</div></span></td>
  </tr>
</table></td>
    <td width='44' class='' align='center' valign='middle'><span class='textoNUMEROS'>"
.$variable."</span></td>
  </tr>
  <tr>
    <td colspan='2' align='center'><img src='logo/"
.$row['logo']."' width='224'/><br></td>
  </tr>
</table>
</td>    
"
;
            
                
$r=$a;// contador remanente para listar imagenes sin exceso
                
                    
if ($a >= $n_filas) {
                    
$a=0;// reiniciando el contador horizontal
                    
$i=$i+1;// aumentando el contador vertical
                    
echo '</tr><td></td>';
                    } 
            if (empty(
$row)) {
        echo
"
        texto de que no hay
        "
;
        break 
1;}
            
            }
            
        
?>
</table>
quizas algo tngo malo!!!
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #7 (permalink)  
Antiguo 15/07/2008, 09:26
 
Fecha de Ingreso: junio-2007
Ubicación: por ahi
Mensajes: 262
Antigüedad: 16 años, 9 meses
Puntos: 4
Respuesta: Hacer Numeracion de objetos

$variable -> era solo para el ejemplo.

sprintf("%02d", $num); // en la linea que estas imprimiendo el numero.

<td width='44' class='' align='center' valign='middle'><span class='textoNUMEROS'>".sprintf("%02d", $num)."</span></td>
__________________
Hernando Saenz Sanchez
  #8 (permalink)  
Antiguo 15/07/2008, 09:39
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 7 meses
Puntos: 28
Respuesta: Hacer Numeracion de objetos

aaaaaaaaaaaaah entiendo.. jeje bueno a veces le meto al bruto... gracias hernandos!!!!
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
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 20:28.