Foros del Web » Programando para Internet » PHP »

contador de resultados en un while

Estas en el tema de contador de resultados en un while en el foro de PHP en Foros del Web. Buenas compañeros; Toy haciendo una minigalería de imágenes con un boton de delante y atrás, y tiro de la base de datos para cojer las ...
  #1 (permalink)  
Antiguo 29/12/2005, 04:59
Avatar de susaninhax  
Fecha de Ingreso: noviembre-2004
Mensajes: 358
Antigüedad: 19 años, 5 meses
Puntos: 3
contador de resultados en un while

Buenas compañeros;

Toy haciendo una minigalería de imágenes con un boton de delante y atrás, y tiro de la base de datos para cojer las imágenes, es decir el nombre de la fotografía y el nombre de la carpeta en la que están guardadas. Pues bien, necesito contar las imágenes, y las voy guardando en un array. Pero creo que algo no debo de estar haciendo bien, porque no me saca todas las imágenes, solo una. El código es este:
Código PHP:
 <?php $sql="select  fotografia, carpeta
        from fotografias
        where id_ciudad='15'  //pongo 15 pa ver la ciudad 15
        limit 0,1"
;   //(para que solo me saque una foto)
                                    
$result=mysql_query($sql,$link) or die(mysql_query());
                                    
$cont=0;
                                    while(
$row=mysql_fetch_array($result)){

    
$fotografia=$row["fotografia"];    
    
$carpeta=$row["carpeta"];
                                        echo 
$fotografia;
                                    
$pepe[$cont]=$fotografia;
                                    
$cont++;
                                        echo 
pepe.$pepe[$cont];
        
?>
Si le quito el limit 0,1 me funciona los botones de siguiente pero me saca la misma foto repetida las 30 veces hacia abajo... si le quito el limit0,1 me deja de funcionar los botones de adelante y atrás. A su vez, no consigo ver más que la primera imagen, y el contador no funciona, solo me saca la primera foto.. Estoy poniendo mal el array????? estoy muy confundida...

Un saludo a todos y muchas gracias de antemanoooo, FELICES FIESTASS!!!

Última edición por Cluster; 29/12/2005 a las 06:59
  #2 (permalink)  
Antiguo 29/12/2005, 06:08
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Si quieres sacar todas las fotografias no coloques limit 0,1 por que ello sólo te permite sacar 1 registro.
En el codigo que muestras no se ve como manejas el asunto de los botones de adelante y atras.
Cual es la idea de este codigo?

$pepe[$cont]=$fotografia;
echo pepe.$pepe[$cont];
  #3 (permalink)  
Antiguo 29/12/2005, 06:53
Avatar de gonzalezmfrank  
Fecha de Ingreso: julio-2005
Ubicación: Maracaibo - Venezuela
Mensajes: 266
Antigüedad: 18 años, 9 meses
Puntos: 0
Aparte de lo que mencionó claudiovega.... donde cierras el while ?

Saludos

Frank
  #4 (permalink)  
Antiguo 29/12/2005, 10:05
Avatar de susaninhax  
Fecha de Ingreso: noviembre-2004
Mensajes: 358
Antigüedad: 19 años, 5 meses
Puntos: 3
Exclamación

Buenas compañeros,

gracias por responder, pues me imagino que lo mejor es ver el código y os lo comento de paso.

Código PHP:

etc...

<body  onLoad="changeScreenSize(500,500)">
<p>
     <?php $sql="select  fotografia, carpeta
             from fotografias
                      where id_ciudad='15' limit 0,1"

                                    
$result=mysql_query($sql,$link) or die(mysql_query());
                                    
$cont=0;
                                    while(
$row=mysql_fetch_array($result)){
            
$fotografia=$row["fotografia"];    
            
$carpeta=$row["carpeta"];
        
                     
$pepe[$cont]=$fotografia;
             
$cont++;
                                    
//   $imagen=imagecreatefromjpeg($fotografia);
                                      //$ancho=imagesx($imagen);
                                    //$alto=imagesy($imagen);
                                        
?>
<img src="../lugares/<?php echo $carpeta?>/<?php echo $pepe[$id];?>">
  <?php   
   
//cerramos el while para sacar las imagenes
   
?>
</p>
<p>
<?php

$conta_matriz
=count($pepe);
echo 
$conta_matriz;
 if (
$_GET["id"]<$conta_matriz) {
?>
<a href="../rutas/slider_fotografias.php?id=<?php echo ($_GET["id"] + 1); ?>">siguiente</a>
<a href="../rutas/slider_fotografias.php?id=<?php echo ($_GET["id"] - 1); ?>">anterior</a>


<?php
} elseif ($_GET["id"]>=$conta_matriz) {
?>
<a href="../rutas/slider_fotografias.php?id=<?php echo ($_GET["id"] - 1); ?>">anterior</a>
<?php
}
?>
</p>
Pos cuento, limito la consulta a 0,1 para que solo aparezca una imagen, no todas a la vez, qiero hacer un pasador de imagenes sacadas de la base de datos.Tengo la ruta y el nombre de las imagenes guardadas en la bd. y las imagenes las tengo subidas.
Mi problema es que no me cuenta bien las imagenes por eso ponía lo de "echo pepe.$pepe[$count];" para poder ver lo que me imprimía. Por eso pienso que estoy haciendo mal el contador, y los botones para moverme una adelante una atras, creo que tampoco lo estoy haciendo muy bien...

Se os ocurre algo? alguien ha intentado algo parecido?????????????????
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:55.