Foros del Web » Programando para Internet » PHP »

ver.php aroja un error en el row

Estas en el tema de ver.php aroja un error en el row en el foro de PHP en Foros del Web. estimados tengo un codigo que muestra los articulos completos ver.php el tema es que no me muestra resultados <? $conn = mysql_connect("localhost","root","root"); mysql_select_db("basededatos"); $q = ...
  #1 (permalink)  
Antiguo 15/11/2008, 06:37
 
Fecha de Ingreso: abril-2002
Ubicación: las condes
Mensajes: 184
Antigüedad: 22 años
Puntos: 1
ver.php aroja un error en el row

estimados tengo un codigo que muestra los articulos completos ver.php

el tema es que no me muestra resultados

<?



$conn = mysql_connect("localhost","root","root");



mysql_select_db("basededatos");



$q = mysql_query("SELECT id, cabezera, titulo, breve_texto, Noticia, imagen, fecha, url FROM articulos WHERE id=$id");



$res = mysql_fetch_row($q);



$poema = split("\n",$res[4]);



echo "<table width=\"100%\" height=\"145\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
<tr>
<td height=0 valign=\"top\" bgcolor=\"#0269AD\"> <div align=\"center\"><font color=\"#FFCC00\" size=\"5\"><strong>$res[1]</strong></font><img src=\"$res[4]\" border=\"0\" align=\"right\"></div></td>
</tr>
<tr>
<td height=\"0\" valign=\"top\" bgcolor=\"#005088\"> <div align=\"center\"><font color=\"#FFCC00\" size=\"5\"></font></div></td>
</tr>
<tr>
<td height=\"0\" valign=\"top\" bgcolor=\"#0000FF\"> <p><strong><font color=\"#FFFFFF\">$res[2]</font></strong></p></td>
</tr>
<tr>
<td height=\"0\" valign=\"top\" bgcolor=\"#0099FF\"> <p align=\"right\"><font color=\"#FFFFFF\"><em>Fecha
de publicaci&oacute;n: $res[6]</em></font></p></td>
</tr>
<tr>
<td height=\"0\" valign=\"top\"> <p>$poema[$i]"; for($i=0;$i<count($poema);$i++)
echo "<font class=\"content\">$poema[$i]</font><br>
";
echo "</p></td>
</tr>
<tr>
<td height=\"0\" valign=\"top\" bgcolor=\"#666666\"><strong>Autor:</strong>
$res[5]<br>
<strong>Sitio Relacionado:</strong> <a href=\"$res[7]\" target=\"_blank\">$res[7]</a></td>
</tr>
</table>";



mysql_close($conn);



?>

el error es en la linea 25 :Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource.

La linea 25: seria: $res = mysql_fetch_row($q);
__________________
Juan Pablo Sánchez
  #2 (permalink)  
Antiguo 15/11/2008, 06:51
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: ver.php aroja un error en el row

Hola

Deberias de poner el control de errores de MySQL, para ver, primero, si hay errores en la consulta a la BBDD.


$q = mysql_query("SELECT id, cabezera, titulo, breve_texto, Noticia, imagen, fecha, url FROM articulos WHERE id=$id") or die (mysql_error());

Y si quieres que te muestre todos los registros, en tu script, deberias incluir un bucle como WHILE, para sacar todos los datos.

Un saludo
  #3 (permalink)  
Antiguo 15/11/2008, 10:44
 
Fecha de Ingreso: abril-2002
Ubicación: las condes
Mensajes: 184
Antigüedad: 22 años
Puntos: 1
Respuesta: ver.php aroja un error en el row

si no mal recuerdo creo es un error en id=$id donde el signo peso dejo de ser una varible valida para pasar cosas por url.

creo no me acuerdo mucho de eso pero algo asi
__________________
Juan Pablo Sánchez
  #4 (permalink)  
Antiguo 15/11/2008, 11:24
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: ver.php aroja un error en el row

Ponlo entre comillas

WHERE id = '$id'

Un saludo
  #5 (permalink)  
Antiguo 15/11/2008, 12:12
 
Fecha de Ingreso: abril-2002
Ubicación: las condes
Mensajes: 184
Antigüedad: 22 años
Puntos: 1
Respuesta: ver.php aroja un error en el row

Parse error: syntax error, unexpected T_VARIABLE
__________________
Juan Pablo Sánchez
  #6 (permalink)  
Antiguo 15/11/2008, 12:24
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: ver.php aroja un error en el row

Hola

de donde viene y como recoges la variable $id?

Un saludo
  #7 (permalink)  
Antiguo 15/11/2008, 17:48
 
Fecha de Ingreso: abril-2002
Ubicación: las condes
Mensajes: 184
Antigüedad: 22 años
Puntos: 1
Respuesta: ver.php aroja un error en el row

de un php <style type="text/css">
.titulo{COLOR: #000000; FONT-SIZE: 12px; FONT-WEIGHT: bold; FONT-FAMILY: Arial,Helvetica,sans-serif;}
.categoria{COLOR: #000000; FONT-SIZE: 11px; FONT-FAMILY: Arial,Helvetica,sans-serif;}
.contenido{BACKGROUND: none; COLOR: #000000; FONT-SIZE: 10px; FONT-WEIGHT: bold; FONT-FAMILY: Verdana, Helvetica; TEXT-DECORATION: none}
A:link {BACKGROUND: none; COLOR: #000000; FONT-SIZE: 11px; FONT-FAMILY: Verdana, Helvetica; TEXT-DECORATION: none}
A:active {BACKGROUND: none; COLOR: #000000; FONT-SIZE: 11px; FONT-FAMILY: Verdana, Helvetica; TEXT-DECORATION: none}
A:visited {BACKGROUND: none; COLOR: #000000; FONT-SIZE: 11px; FONT-FAMILY: Verdana, Helvetica; TEXT-DECORATION: none}
A:hover {BACKGROUND: none; COLOR: #000000; FONT-SIZE: 11px; FONT-FAMILY: Verdana, Helvetica; TEXT-DECORATION: underline}
</style>
<?
/*revisa siempre antes de ver las noticias si la codificacion o charset= este en iso-8859-1. eso */
$conn = mysql_connect("localhost","fci1","mm");
mysql_select_db("funbosco");
$q = mysql_query("SELECT id, imagen, breve_texto, titulo, color FROM articulos WHERE mostrar='home' ORDER BY id DESC LIMIT 2 ");
while($res = mysql_fetch_row($q)){
?>
</font>
<table bgcolor="<?=$res[4]?>" border="0">
<tr>
<td class="titulo" align="center" colspan="2"><h3>
<?=$res[3]?>
</h3></td>
</tr>
<tr>
<? if (!empty($res[1])){?>
<td width="110" height="110"><h3><a href="javascript:ventanaSecundaria('ver.php?id=<?= $res[0]?>')"> <img src="<?=$res[1];?>" alt="" width="110" height="110" border="0" align="left" /> </a> </h3></td>
<?}?>
<td class="contenido" valign="top" align="center"><h3>
<?=substr($res[2],0,190)?></h3></td>
</tr>
<tr>
<td class="categoria" align="right" colspan="2"><h3>&nbsp;</h3></td>
</tr>
</table>
<p>
<?}mysql_close($conn);?>
__________________
Juan Pablo Sánchez
  #8 (permalink)  
Antiguo 15/11/2008, 20:10
 
Fecha de Ingreso: marzo-2007
Mensajes: 29
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: ver.php aroja un error en el row

usa esto:

$q = mysql_query("SELECT id, cabezera, titulo, breve_texto, Noticia, imagen, fecha, url FROM articulos WHERE id='$_GET[id]'")
  #9 (permalink)  
Antiguo 16/11/2008, 03:00
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: ver.php aroja un error en el row

Hola

si hazlo asi,

$id = '$_GET[id]'")

$q = mysql_query("SELECT id, cabezera, titulo, breve_texto, Noticia, imagen, fecha, url FROM articulos WHERE id='$id'") or die (mysql_error());

Un saludo
  #10 (permalink)  
Antiguo 17/11/2008, 12:43
 
Fecha de Ingreso: abril-2002
Ubicación: las condes
Mensajes: 184
Antigüedad: 22 años
Puntos: 1
Respuesta: ver.php aroja un error en el row

no ese no es el problema
__________________
Juan Pablo Sánchez
  #11 (permalink)  
Antiguo 17/11/2008, 12:47
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: ver.php aroja un error en el row

como que al delclarar la base de datos, no le envias en que servidor no???
osea le falta la conexion:


esta asi:
$conn = mysql_connect("localhost","fci1","mm");
mysql_select_db("funbosco");

ponlo asi:
$conn = mysql_connect("localhost","fci1","mm");
mysql_select_db("funbosco",$conn);


Suerte.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #12 (permalink)  
Antiguo 17/11/2008, 13:18
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Respuesta: ver.php aroja un error en el row

bueno yo lo haria de la siguiente manera.
Código PHP:
<?php
/*Aqui tu conexion a MySQL */

(int) $id$_GET['id']; // Elimina el (int) en caso de que no sea un Entero.

$sql "SELECT tabla FROM tabla WHERE id_tabla = '$id' ";
$query mysql_query($sql) or die(mysql_error());

$datos mysql_fetch_array($query) or die(mysql_error());

echo 
$datos[0];


ahora si deseo hacer un ciclo While simplemente hago lo siguiente..

while(
$datos mysql_fetch_array($query))
{
  echo 
$datos[0];

}
?>
__________________
O nos hacemos miserables o nos hacemos fuertes , la cantidad de trabajo es la misma.
  #13 (permalink)  
Antiguo 17/11/2008, 22:57
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Respuesta: ver.php aroja un error en el row

Todos los planteamientos han estado bien.. pero sigo sin saber si realmente el problema esta con tu consulta ya que no has documentado a cabalidad donde es que tienes tu error..

Yo lo entiendo de la siguiente manera.. y no sera diferente de la respuesta de los demas..

Código PHP:
// conexion al servidor
$conn mysql_connect("localhost","fci1","mm");
if(!
is_resource($conn))
   die(
'Error #1: ' mysql_error());

// seleccion de la bd
$db mysql_select_db("funbosco",$conn);
if (!
$db)
   die(
'Error #2: ' mysql_error());

// recibes la variable enviada por URL
$id $_REQUEST['id'];

$sql "SELECT id, cabezera, titulo, breve_texto, Noticia, imagen, fecha, url FROM articulos WHERE id = ".$id." LIMIT 0,1;";
// si dudas q tu consulta esta mal descomenta la linea siguiente y mira el resultado
//echo $sql;
$query mysql_query($sql);
if (!
$query)
   die(
"Error #3: ".mysql_error()); 
Creo que lo que le sigue es la linea del mysql_fetch_row.. que de ahi en delante se ve bien todo.. la parte que todavia queda en dudas es todo lo que escribi arriba, entonces si puedes intentar algo similar.. poniendo las validaciones y los die().. empezaremos a conocer las posibles causas de tu error.

Última edición por erlingfiallos; 17/11/2008 a las 23:03
  #14 (permalink)  
Antiguo 18/11/2008, 09:24
 
Fecha de Ingreso: abril-2002
Ubicación: las condes
Mensajes: 184
Antigüedad: 22 años
Puntos: 1
Respuesta: ver.php aroja un error en el row

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /ml/ver.php on line 32

el tema esta en e fetch_row

$res = mysql_fetch_row($sql);

que es la linea 32.

aveces me dice algo de T_bariable o algo asi
__________________
Juan Pablo Sánchez
  #15 (permalink)  
Antiguo 18/11/2008, 09:31
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: ver.php aroja un error en el row

Imprime el valor de mysql_error() para que te indique por que tiene un error en la consulta.

Saludos.
  #16 (permalink)  
Antiguo 18/11/2008, 09:34
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: ver.php aroja un error en el row

ps sigo ensistiendo en que cuando declaras la base de datos, no le pasas como parametro la conexion.....

sino por que no le haces un echo a tu sentencia sql y la prubas en el motor mysql haber que sale......

suerte.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog

Última edición por masterojitos; 18/11/2008 a las 10:59
  #17 (permalink)  
Antiguo 18/11/2008, 10:57
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Respuesta: ver.php aroja un error en el row

Si implementaste el codigo que escribi anteriormente, ya deberiamos saber cual fue el problema.. entonces si usaste mi codigo.. y aparece un error con el mysql_fetch_row es hora que descomentes la linea que escribi que dice:

Código PHP:
// si dudas q tu consulta esta mal descomenta la linea siguiente y mira el resultado
echo $sql
y ya con eso sabremos bien que pasa, porque creo que algo estas haciendo mal o no estas haciendo algo de lo que hemos dicho..

ese error no merece tanta atencion.. resolverlo no deberia de tomar tanto tiempo.
  #18 (permalink)  
Antiguo 19/11/2008, 21:43
 
Fecha de Ingreso: abril-2002
Ubicación: las condes
Mensajes: 184
Antigüedad: 22 años
Puntos: 1
Respuesta: ver.php aroja un error en el row

este es el resultado
SELECT id, cabezera, titulo, breve_texto, Noticia, imagen, fecha, url FROM articulos WHERE id = '.7.'
osea funciona pero no me muestra resultado
__________________
Juan Pablo Sánchez
  #19 (permalink)  
Antiguo 19/11/2008, 23:23
Avatar de erlingfiallos  
Fecha de Ingreso: febrero-2005
Ubicación: Mexico ahora
Mensajes: 499
Antigüedad: 19 años, 2 meses
Puntos: 9
Respuesta: ver.php aroja un error en el row

El error es producido porque tu consulta esta mal formada.. podrias por favor utilizar parte del codigo que escribi, de esa forma estoy seguro que no tendras ningun problema al respecto.

Al final la consulta deberia de quedar de esta manera.. y no como tu has mostrado que la tienes actualmente.

Código:
SELECT id, cabezera, titulo, breve_texto, Noticia, imagen, fecha, url FROM articulos WHERE id = 7 LIMIT 0,1;
Y tambien otra observación.. es que no hagas la comparacion de id = '7' ya que eso esta comparando un numero que es el di con una cadena que equivale al 7.. recuerda que id es un campo tipo entero.. por lo que la comparacion igual debe de ser numerica solamente.
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 09:42.