Foros del Web » Programando para Internet » PHP »

Problema con WHILE

Estas en el tema de Problema con WHILE en el foro de PHP en Foros del Web. Buenas a todos, Tengo una base de datos de la que quiero recoger los valores de una determinada tabla. Tengo el siguiente codigo: Código PHP: ...
  #1 (permalink)  
Antiguo 19/05/2010, 07:48
Avatar de ivangd  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Problema con WHILE

Buenas a todos,

Tengo una base de datos de la que quiero recoger los valores de una determinada tabla.

Tengo el siguiente codigo:

Código PHP:

<?php

$sql
=mysql_query("SELECT * FROM tbl_registros WHERE Tags LIKE '%Interes%'");
$contar=mysql_num_rows($sql);
            
echo 
"<div align='left'>";
                
while(
$mostrar=mysql_fetch_array($sql))

{

echo 
"<strong>Empresa/Entidad: </strong>"; echo $mostrar['Empresa/Entidad'];
                    
echo 
"<br />";
                                
echo 
"<strong>Descripcion: </strong>"; echo $mostrar['Descripcion'];
                    
echo 
"<hr />";

}
                                
echo 
"</div>";

?>
Tengo el problema de que el WHILE se esta comiendo un registro, en total tengo 9 registros y esta mostrando 8.

¿Que estoy haciendo mal?

Gracias y un saludo.
  #2 (permalink)  
Antiguo 19/05/2010, 08:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con WHILE

si es es todo el código no tiene sentido lo que dices...

seguramente no te das cuenta, pero en tu ejemplo no hay nada raro ni adicional, así es como funciona... ¿realmente sabes lo que estas diciendo??

además, ¿que valor te devuelve $contar??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 19/05/2010, 08:22
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Problema con WHILE

puedes intentar usar la funcion mysql_data_seek para resetear el puntero ? aunque como dice pateketrueke en lo que tienes de codigo no se ve nada mal..
__________________
More about me...
~ @rhyudek1
~ Github
  #4 (permalink)  
Antiguo 19/05/2010, 09:01
Avatar de ivangd  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Problema con WHILE

$contar devuelve 9 y el while muestra 8 registros.

Yo tampoco veo el error por ningún lado...
  #5 (permalink)  
Antiguo 19/05/2010, 09:33
 
Fecha de Ingreso: octubre-2007
Mensajes: 87
Antigüedad: 16 años, 7 meses
Puntos: 1
Respuesta: Problema con WHILE

puede ser una chorrada esto pero... prueba poner la palabra "Interes" en minúscula todo, haber si fuera por eso... y asegúrate de que en tu base de datos no tiene acento ni nada... seguro que ya lo as comprobado pero por si acaso, a vezes las cosas mas elementales son las que se pasan ^^
es que todo lo demás esta bien...
  #6 (permalink)  
Antiguo 19/05/2010, 09:42
Avatar de ivangd  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Problema con WHILE

Cita:
Iniciado por xlokyx Ver Mensaje
puede ser una chorrada esto pero... prueba poner la palabra "Interes" en minúscula todo, haber si fuera por eso... y asegúrate de que en tu base de datos no tiene acento ni nada... seguro que ya lo as comprobado pero por si acaso, a vezes las cosas mas elementales son las que se pasan ^^
es que todo lo demás esta bien...
Lo acabo de comprobar y todo correcto.
  #7 (permalink)  
Antiguo 19/05/2010, 09:50
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Problema con WHILE

el problema obviamente no esta ahi..
para probar podrias hacer solo esa parte del codigo...
quita todo lo demas y ve los resultados..
revisa que la conexion este correcta..
que no estes haciendo otro fetch antes ..
ejecuta la consulta en la consola de mysql ..
luego comenta los resultados
saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #8 (permalink)  
Antiguo 20/05/2010, 01:38
Avatar de ivangd  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Problema con WHILE

El código entero de la página es este:

Tengo un archivo llamado conexion.php

Código PHP:
function conexion()

{

    
$db=mysql_pconnect("localhost","root","");

    if (!
$db)

    {
        echo 
"error: no se ha podido conectar a la base de datos.";
        exit;    
    }

    
mysql_select_db("empresas");


Y luego en otra tengo solo HTML con el siguiente PHP:

Código PHP:

require_once("conexion.php");

conexion();

$sql=mysql_query("SELECT * FROM tbl_registros WHERE Tags LIKE '%Interes%'");

$contar=mysql_num_rows($sql);
                
echo 
"<div align='left'>";
                
while(
$mostrar=mysql_fetch_array($sql))

{

echo 
"<strong>Empresa/Entidad: </strong>"; echo $mostrar['Empresa/Entidad'];

echo 
"<br />";
                    
echo 
"<strong>Descripcion: </strong>"; echo $mostrar['Descripcion'];                
                    
echo 
"<hr />";

}

echo 
"</div>"
  #9 (permalink)  
Antiguo 20/05/2010, 02:05
Avatar de ivangd  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Problema con WHILE

SOLUCIONADO:

Tenia duplicado lo siguiente:

Código PHP:
$mostrar=mysql_fetch_array($sql
Lo tenia fuera del While y dentro, por lo cual un registro se almacenaba en la variable $mostrar de fuera y los demas en el While.

Muchas gracias a todos! :)
  #10 (permalink)  
Antiguo 20/05/2010, 08:03
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con WHILE

Cita:
Iniciado por ivangd Ver Mensaje
SOLUCIONADO:

Tenia duplicado lo siguiente:

Código PHP:
$mostrar=mysql_fetch_array($sql
Lo tenia fuera del While y dentro, por lo cual un registro se almacenaba en la variable $mostrar de fuera y los demas en el While.

Muchas gracias a todos! :)
y como es posible que el código que nos mostrabas no estaba tal dupla??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 21/05/2010, 01:21
Avatar de ivangd  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Problema con WHILE

Porque tengo 3 paginas diferentes para mostrar (enlaces_interes.php, empresas.php, formacion.php).

Lo único que cambio es el criterio de: WHERE tbl_registros LIKE 'CRITERIO'

Y os estaba pegando el código de una de las paginas que estaba correcta, lo sé, soy un empanao xD!

Etiquetas: Ninguno
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 00:42.