Foros del Web » Programando para Internet » PHP »

error en mysql_fetch_array

Estas en el tema de error en mysql_fetch_array en el foro de PHP en Foros del Web. Hola a todos, tengo q siguiente problema me da un error en: if ($row = mysql_fetch_array($result)){ el error es el siguiente: Warning: mysql_fetch_array(): supplied argument ...
  #1 (permalink)  
Antiguo 18/08/2007, 06:24
 
Fecha de Ingreso: agosto-2007
Mensajes: 101
Antigüedad: 17 años, 3 meses
Puntos: 1
Pregunta error en mysql_fetch_array

Hola a todos, tengo q siguiente problema me da un error en:
if ($row = mysql_fetch_array($result)){


el error es el siguiente:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in / on line 11

este es el cuerpo del php:
<?php

INCLUDE ("conex.php");


$nickN = $_POST['nick'];
$passN = $_POST['password'];

$result = mysql_query("SELECT * FROM usuarios WHERE nick= $nickN", $conexion);

if ($row = mysql_fetch_array($result)){
echo "comprobando los datos";
IF ($row["nick"] = $nickN){
IF ($row["password"] = $passN){

//30 dias dura la cookie
setcookie("usNick",$nickN,time()+5184000);
setcookie("usPass",$passN,time()+5184000);

echo "Ingreso exitoso, ahora sera dirigido a la pagina principal.";
}
} else {
echo "No se encuentra usuario";
}
?>


<gracias de ante mano, y a ver si aprendo php, y podre ayudar ;) chao

Última edición por bocasecaman; 18/08/2007 a las 06:40
  #2 (permalink)  
Antiguo 18/08/2007, 08:31
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 17 años, 6 meses
Puntos: 6
Re: error en mysql_fetch_array

Hola por ke no le pones esta linea tal vez el error sea desde el acceso a la BD.

$res = mysql_query($result) or die('Consulta fallida: ' . mysql_error());
y ya despues pones:


if ($row = mysql_fetch_array($rest)){


SALU2
__________________
"Eres grande por que caminas entre gigantes"
  #3 (permalink)  
Antiguo 18/08/2007, 09:05
 
Fecha de Ingreso: agosto-2007
Mensajes: 101
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: error en mysql_fetch_array

Hola Fermux antes de nada gracias por ayudarme, pero me salio otro error refiriendose a la linea 26 la cual es la de:
?>

El error es el siguiente:
Parse error: syntax error, unexpected $end in line 26

el php esta asi:
<?php

INCLUDE ("conec.php");


$nickN = $_POST['nick'];
$passN = $_POST['password'];

$result = mysql_query("SELECT * FROM usuarios WHERE nick= $nickN", $conexion);

$res = mysql_query($result) or die('Consulta fallida: ' . mysql_error());
if ($row = mysql_fetch_array($result)){
echo "comprobando los datos";
IF ($row["nick"] = $nickN){
IF ($row["password"] = $passN){

//30 dias dura la cookie
setcookie("usNick",$nickN,time()+5184000);
setcookie("usPass",$passN,time()+5184000);

echo "Ingreso exitoso, ahora sera dirigido a la pagina principal.";
}
} else {
echo "No se encuentra usuario";
}
?>
  #4 (permalink)  
Antiguo 18/08/2007, 09:16
 
Fecha de Ingreso: agosto-2007
Mensajes: 101
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: error en mysql_fetch_array

Cita:
Iniciado por bocasecaman Ver Mensaje
Hola Fermux antes de nada gracias por ayudarme, pero me salio otro error refiriendose a la linea 26 la cual es la de:
?>

El error es el siguiente:
Parse error: syntax error, unexpected $end in line 26

el php esta asi:
<?php

INCLUDE ("conec.php");


$nickN = $_POST['nick'];
$passN = $_POST['password'];

$result = mysql_query("SELECT * FROM usuarios WHERE nick= $nickN", $conexion);

$res = mysql_query($result) or die('Consulta fallida: ' . mysql_error());
if ($row = mysql_fetch_array($result)){
echo "comprobando los datos";
IF ($row["nick"] = $nickN){
IF ($row["password"] = $passN){

//30 dias dura la cookie
setcookie("usNick",$nickN,time()+5184000);
setcookie("usPass",$passN,time()+5184000);

echo "Ingreso exitoso, ahora sera dirigido a la pagina principal.";
}
} else {
echo "No se encuentra usuario";
}
?>
me estoy dando cuenta q la variable esta vacia y estoy haciendo lo mismo, creo q segun esto tiene que quedar asi:
$result = "SELECT * FROM usuarios WHERE nick= $nickN", $conexion;

$res = mysql_query($result) or die('Consulta fallida: ' . mysql_error());
if ($row = mysql_fetch_array($res)){

no?¿? perdona pero esque soy principiante en php. Gracias por lo menos por leerlo
  #5 (permalink)  
Antiguo 18/08/2007, 09:28
 
Fecha de Ingreso: julio-2007
Mensajes: 71
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: error en mysql_fetch_array

ahi encontre!
te falta cerrar una llave...
Fijate bien desde el
Código PHP:
if ($row mysql_fetch_array($result)){ 
empieza, abrieron dos llaves mas, y cerraste dos llaves... te falta uno, fijate bien...


Espero que te ande =)
  #6 (permalink)  
Antiguo 18/08/2007, 10:07
 
Fecha de Ingreso: agosto-2007
Mensajes: 101
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: error en mysql_fetch_array

santuguerra gracias, pero ahora me salio otro error y mas que cambio las cosas no me funca.

error:
Parse error: syntax error, unexpected T_VARIABLE in on line 9

linea del error:
$result = "SELECT * FROM usuarios WHERE nick= '$nickN'", $conexion;


codigo php:
<?php

INCLUDE ("conec.php");


$nickN = $_POST['nick'];
$passN = $_POST['password'];

$result = "SELECT * FROM usuarios WHERE nick= '$nickN'", $conexion;

$reslt = mysql_query($result) or die('Consulta fallida: ' . mysql_error());
if ($row = mysql_fetch_array($reslt)){
echo "comprobando los datos";
IF ($row["nick"] = $nickN){
IF ($row["password"] = $passN){

//30 dias dura la cookie
setcookie("usNick",$nickN,time()+5184000);
setcookie("usPass",$passN,time()+5184000);

echo "Ingreso exitoso, ahora sera dirigido a la pagina principal.";
}
} else {
echo "No se encuentra usuario";
}
}
?>

Gracias
  #7 (permalink)  
Antiguo 18/08/2007, 10:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Re: error en mysql_fetch_array

Quita esta parte: , $conexion

Ya que estas asignando un string, despues de la coma eso no va ahi.

Saludos.
  #8 (permalink)  
Antiguo 18/08/2007, 13:57
 
Fecha de Ingreso: julio-2007
Mensajes: 71
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: error en mysql_fetch_array

Si... tiene razon GatorV... eso o pone tambien (note dentro de mysql_query(); )

$result = "SELECT * FROM usuarios WHERE nick= '$nickN'";

$reslt = mysql_query($result, $conexion) or die('Consulta fallida: ' . mysql_error());
  #9 (permalink)  
Antiguo 19/08/2007, 00:59
 
Fecha de Ingreso: agosto-2007
Mensajes: 101
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: error en mysql_fetch_array

Gracias de nuevo eso error me desaparecio ;) gracias a los tres. Lo unico esque ahora me sale esto..
Consulta fallida: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''SELECT * FROM usuarios WHERE nick= ricardo'' at line 1

yo tengo:
Versión del servidor: 5.0.24a-standard-log

siento mi pesadez pero es que es la primera vez que me sale este error y nose por donde cogerlo. Muchas gracias ;)
  #10 (permalink)  
Antiguo 19/08/2007, 04:08
 
Fecha de Ingreso: agosto-2007
Mensajes: 101
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: error en mysql_fetch_array

Por favor a ver si son tan amables, pues nose que hacer. Gracias
  #11 (permalink)  
Antiguo 19/08/2007, 07:44
 
Fecha de Ingreso: agosto-2007
Mensajes: 101
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: error en mysql_fetch_array

Bueno ya lo he sacado :D, queria daros las gracias a los que me han ayudado y a los que se interesaron por mi tema.

Dejo aqui la correccion para que veais que tonteria era:

codigo antigüo:
$result = "'SELECT * FROM usuarios WHERE nick= $nickN'";

Código correcto:
$result = "SELECT * FROM usuarios WHERE nick= '$nickN'";

Esta tonteria era jajajjaja y me llevo horas y horas :S
  #12 (permalink)  
Antiguo 20/08/2007, 14:01
 
Fecha de Ingreso: marzo-2005
Ubicación: Madrid
Mensajes: 233
Antigüedad: 19 años, 7 meses
Puntos: 5
Re: error en mysql_fetch_array

Pues no el codigo que tu haces mete la cadena $nickN en el campo que indicas, lo que imagino que quieres hacer es meter la variable de ese nombre para ello :

Código correcto:
$result = "SELECT * FROM usuarios WHERE nick= ' ".$nickN." ' ";

espero que te sirva.
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 14:07.