Foros del Web » Programando para Internet » PHP »

Porqué no me muestra los registros?

Estas en el tema de Porqué no me muestra los registros? en el foro de PHP en Foros del Web. He hecho éste código para que me muestre los registros... pero no muestra nada... Código PHP: <? $result  =  mysql_query ( "SELECT * FROM noticias WHERE id='$id'" ); ?> <? while ( ...
  #1 (permalink)  
Antiguo 31/12/2002, 11:29
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Pregunta Porqué no me muestra los registros?

He hecho éste código para que me muestre los registros... pero no muestra nada...

Código PHP:
<? $result mysql_query("SELECT * FROM noticias WHERE id='$id'");?>
<?
while ($row=mysql_fetch_array($result))
{
echo 
'<table align=center border=0>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["titulo"].'<br>'.$row["copete"].'</font></td>';
echo 
'<td><img src='.$row["imagen"].'border="0"></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["noticia"].'</font></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>Fecha:'.$row["fecha"].', <a href=imprimir.php?id='.$row["id"].'>Imprimir</a> · <a href=amigo.php?id='.$row["id"].'>Enviar a un amigo</a></font></td>';
echo 
'</tr>';
echo 
'</table>';
}
mysql_free_result($result)
?>
La conexión está en un includo y va bien.

Gracias.
  #2 (permalink)  
Antiguo 31/12/2002, 11:46
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
ya selecionaste la base de datos a trabajar

Código PHP:
mysql_select_db($baseDatos); 
si ya lo hiciste, hacegurate de que los registros llegan, haz un
Código PHP:
if(mysql_query("SELECT * FROM noticias WHERE id='$id'")) {
while (
$row=mysql_fetch_array($result))
{
echo 
'<table align=center border=0>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["titulo"].'<br>'.$row["copete"].'</font></td>';
echo 
'<td><img src='.$row["imagen"].'border="0"></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["noticia"].'</font></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>Fecha:'.$row["fecha"].', <a href=imprimir.php?id='.$row["id"].'>Imprimir</a> · <a href=amigo.php?id='.$row["id"].'>Enviar a un amigo</a></font></td>';
echo 
'</tr>';
echo 
'</table>';
}
}
else {
   echo 
"No recogio registros";

Saludos
  #3 (permalink)  
Antiguo 31/12/2002, 11:55
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Haciendo lo k me dices me da error. En la línea 20
Código PHP:
<? $result mysql_query("SELECT * FROM noticias WHERE id='$id'");?>
<?
while ($row=mysql_fetch_array($result))
{
echo 
'<table align=center border=0>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["titulo"].'<br>'.$row["copete"].'</font></td>';
echo 
'<td><img src='.$row["imagen"].'border="0"></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["noticia"].'</font></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>Fecha:'.$row["fecha"].', <a href=imprimir.php?id='.$row["id"].'>Imprimir</a> · <a href=amigo.php?id='.$row["id"].'>Enviar a un amigo</a></font></td>';
echo 
'</tr>';
echo 
'</table>';
}
}
else (
20)
{
echo 
'No hay registros';
}
mysql_free_result($result)
?>
  #4 (permalink)  
Antiguo 31/12/2002, 11:59
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
pues creo que te falto el if, o esque aqui no lo pusiste?
  #5 (permalink)  
Antiguo 31/12/2002, 13:25
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Lo he puesto tal como me dices y me da error.

Código PHP:
<?if(mysql_query("SELECT * FROM noticias WHERE id='$id'")); {
while (
$row=mysql_fetch_array($result))
{
echo 
'<table align=center border=0>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["titulo"].'<br>'.$row["copete"].'</font></td>';
echo 
'<td><img src='.$row["imagen"].'border="0"></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["noticia"].'</font></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>Fecha:'.$row["fecha"].', <a href=imprimir.php?id='.$row["id"].'>Imprimir</a> · <a href=amigo.php?id='.$row["id"].'>Enviar a un amigo</a></font></td>';
echo 
'</tr>';
echo 
'</table>';
}
}
else {
   echo 
"No recogio registros";
}  
?>
  #6 (permalink)  
Antiguo 31/12/2002, 13:35
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
mejor prueba asi

Código PHP:
$SQL "SELECT * FROM noticias WHERE id='$id'";
$ejecutar mysql_query($SQL);

if(!
mysql_num_rows($ejecutar)) {
    echo 
"no hay registros";
    exit;
}

// aca muestras los resultados 
Veamo como va esta ves

Saludos
  #7 (permalink)  
Antiguo 31/12/2002, 13:41
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Muchas gracias ahora funciona... entonces tiene que se cosa a la hora de insertar datos... mmm...

Yo uso esto a ver si tiene algún fallo...

Código PHP:
<?
mysql_connect
("localhost","usuario","password");
mysql_db_query("db","insert into noticia (titulo,copete,imagen,fecha,categoria,noticia) values ('$titulo','$copete','$imagen','$fecha','$categoria','$noticia')");
?>
  #8 (permalink)  
Antiguo 31/12/2002, 14:00
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
intenta de esta manera, haber como va

Código PHP:
mysql_connect("localhost","usuario","password");

$baseDatos "tu_base_de_datos";

@
mysql_select_db($baseDatos) or die ("La base de datos no existe");

$SQL "insert into noticia (titulo,copete,imagen,fecha,categoria,noticia) values  ('$titulo','$copete','$imagen','$fecha','$categoria','$noticia')";

if(!
mysql_query($SQL)) {
    echo 
"ERROR: ".mysql_error();

espero te sirva, aunque prueba que talves no recives registros porque las variables no llegan con valores o algo, fijate si ejecutas el mysql.exe y consultas si vez algun registro

Saludos
  #9 (permalink)  
Antiguo 31/12/2002, 17:28
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Ahora si guarda los registros... pero ahora me da error.. en la línea 22....

Código PHP:
<?if(mysql_query("SELECT * FROM noticia WHERE id='$id'"));
{
while (
$row=mysql_fetch_array($result))

{
echo 
'<table align=center border=0>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["titulo"].'<br>'.$row["copete"].'</font></td>';
echo 
'<td><img src='.$row["imagen"].'border="0"></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["noticia"].'</font></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>Fecha:'.$row["fecha"].', <a href=imprimir.php?id='.$row["id"].'>Imprimir</a> · <a href=amigo.php?id='.$row["id"].'>Enviar a un amigo</a></font></td>';
echo 
'</tr>';
echo 
'</table>';
}
}
else (
22)
{
   echo 
"No recogio registros";
}  
?>
  #10 (permalink)  
Antiguo 31/12/2002, 17:36
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
Talves tienes un parentecis de mas ahi donde los cierras, fijate bien, y si fuese posible, si te sigue dando error ponlos aqui, de esa manera es mas facil tratar de localizar el problema

Saludos
  #11 (permalink)  
Antiguo 31/12/2002, 17:44
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
¿Cuál sobra?

He quitado los ...

{
while ($row=mysql_fetch_array($result))

Aquí había uno.

.
.
.
.
.
echo '</table>';
Aquí había otro }
else
{
.
.
.

Y me da error... ahora miraré a ver cual puede ser
  #12 (permalink)  
Antiguo 31/12/2002, 18:15
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
pues copia y pega aqui el error que te da
  #13 (permalink)  
Antiguo 31/12/2002, 18:19
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Error:

Parse error: parse error in c:\appserv\www\cronicas\noticia.php on line 21

Código.

Código PHP:
<?if(mysql_query("SELECT * FROM noticia WHERE id='$id'"));
{
while (
$row=mysql_fetch_array($result))


echo 
'<table align=center border=0>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["titulo"].'<br>'.$row["copete"].'</font></td>';
echo 
'<td><img src='.$row["imagen"].'border="0"></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>'.$row["noticia"].'</font></td>';
echo 
'</tr>';
echo 
'<tr>';
echo 
'<td><font face=Verdana size=1>Fecha:'.$row["fecha"].', <a href=imprimir.php?id='.$row["id"].'>Imprimir</a> · <a href=amigo.php?id='.$row["id"].'>Enviar a un amigo</a></font></td>';
echo 
'</tr>';
echo 
'</table>';

else
{
   echo 
"No recogio registros";
}
?>
  #14 (permalink)  
Antiguo 31/12/2002, 18:23
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
ok, esto deberia quedar asi

Código PHP:
if(mysql_query("SELECT * FROM noticia WHERE id='$id'")){
  while (
$row=mysql_fetch_array($result)) {


  echo 
'<table align=center border=0>';
  echo 
'<tr>';
  echo 
'<td><font face=Verdana size=1>'.$row["titulo"].'<br>'.$row["copete"].'</font></td>';
  echo 
'<td><img src='.$row["imagen"].'border="0"></td>';
  echo 
'</tr>';
  echo 
'<tr>';
  echo 
'<td><font face=Verdana size=1>'.$row["noticia"].'</font></td>';
  echo 
'</tr>';
  echo 
'<tr>';
  echo 
'<td><font face=Verdana size=1>Fecha:'.$row["fecha"].', <a href=imprimir.php?id='.$row["id"].'>Imprimir</a> · <a href=amigo.php?id='.$row["id"].'>Enviar a un amigo</a></font></td>';
  echo 
'</tr>';
  echo 
'</table>';
  }

else{
   echo 
"No recogio registros";

asi ya deberia correr bien

Saludos
  #15 (permalink)  
Antiguo 31/12/2002, 18:41
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Da error en la línea 21, donde está el else.
  #16 (permalink)  
Antiguo 31/12/2002, 18:48
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
Si, sorry, se me paso un parentecis
a cualquiera le pasa no jajaj

esta vez si
Código PHP:
if(mysql_query("SELECT * FROM noticia WHERE id='$id'")){
  while (
$row=mysql_fetch_array($result)) {


  echo 
'<table align=center border=0>';
  echo 
'<tr>';
  echo 
'<td><font face=Verdana size=1>'.$row["titulo"].'<br>'.$row["copete"].'</font></td>';
  echo 
'<td><img src='.$row["imagen"].'border="0"></td>';
  echo 
'</tr>';
  echo 
'<tr>';
  echo 
'<td><font face=Verdana size=1>'.$row["noticia"].'</font></td>';
  echo 
'</tr>';
  echo 
'<tr>';
  echo 
'<td><font face=Verdana size=1>Fecha:'.$row["fecha"].', <a href=imprimir.php?id='.$row["id"].'>Imprimir</a> · <a href=amigo.php?id='.$row["id"].'>Enviar a un amigo</a></font></td>';
  echo 
'</tr>';
  echo 
'</table>';
  }
}
else{
   echo 
"No recogio registros";

Saludos
  #17 (permalink)  
Antiguo 01/01/2003, 09:50
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Jur me parece que PHP y yo no seremos buenos amigos ...

Ahora da error en esta línea:

while ($row=mysql_fetch_array($result)) {

Error:

Warning: Supplied argument is not a valid MySQL result resource in c:\appserv\www\cronicas\noticia.php on line 5
  #18 (permalink)  
Antiguo 01/01/2003, 11:27
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
bueno, ese no es un error de programacion tuyo, sino que quiere decir que no se trageron registro, para ello solucionalo preguntando antes si se recogio algun registro con la funcion mysql_num_rows() y si se recogio alguno lo almacenas en array y muestras, y si no, muestras el mensaje que no se encontro nada.

Saludos
  #19 (permalink)  
Antiguo 01/01/2003, 12:16
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 22 años, 5 meses
Puntos: 0
Lo que dices no es el if que ya tiene?
  #20 (permalink)  
Antiguo 01/01/2003, 12:27
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
nop, el if que ya tiene es para ver si hay errores en la sentencia SQL o bien que la base de datos no exista o la tabla, pero puede hacer la consulta y salir todo bien y sin problemas, pero no arrojar nigun resultado, para ver si hay o no resultados se una mysql_num_rows()

Saludos
  #21 (permalink)  
Antiguo 01/01/2003, 16:11
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Lo que pasa es que no estas recogiendo el valor que te devuelve el mysql_query(). Es decir, en vez de :
Código PHP:
if(mysql_query("SELECT * FROM noticia WHERE id='$id'")){ 
debes poner
Código PHP:
if($result=mysql_query("SELECT * FROM noticia WHERE id='$id'")){ 
Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #22 (permalink)  
Antiguo 01/01/2003, 21:44
Avatar de chalito  
Fecha de Ingreso: diciembre-2002
Ubicación: Santiago, chile
Mensajes: 221
Antigüedad: 21 años, 4 meses
Puntos: 0
claro, no se como no lo habia notado antes , debe ser la caña jajaj

Saludos
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 17:58.