Autor
|
Tema: Problema script mysql_fetch_array() (Leído 5,210 veces)
|
sergio98
Desconectado
Mensajes: 20
|
El script me da error: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/u815225632/public_html/check-login.php on line 17 <!DOCTYPE html> <html> <head> <title>Login</title> </head> <body> <?php $user = $_REQUEST['user']; $password = $_REQUEST['password']; $co = mysql_connect("---host---", "---usuario---", "---password---"); mysql_select_db("users", $co); $se = mysql_query("select USER,PASSWORD from users where USER=$user", $co); echo $user; echo "<br />"; echo $password; echo "<br />"; if ($re = mysql_fetch_array($se)) { echo $re['USER']; echo $re['PASSWORD']; if ($re['PASSWORD'] == $password) { echo "OK!"; } else { echo "NO!"; } } ?> </body> </html> Gracias y espero q me ayudéis a solucionarlo
|
|
|
En línea
|
|
|
|
marko1985
Desconectado
Mensajes: 46
|
tienes que pasar otro parámetro a mysql_fetch_array y dejarlo así <!DOCTYPE html> <html> <head> <title>Login</title> </head> <body> <?php $user = $_REQUEST['user']; $password = $_REQUEST['password']; $co = mysql_connect("---host---", "---usuario---", "---password---"); $se = mysql_query("select USER,PASSWORD from users where USER='$user'", $co); echo $user; echo "<br />"; echo $password; echo "<br />"; echo $re['USER']; echo $re['PASSWORD']; if ($re['PASSWORD'] == $password) { echo "OK!"; } else { echo "NO!"; } } ?> </body> </html>
En el ejemplo 3 de esta página verás lo que te comento http://es1.php.net/manual/es/function.mysql-fetch-array.phpPD: También creo que te faltan las comillas simples en la variable de la consulta $user
|
|
« Última modificación: 17 Junio 2014, 15:24 pm por marko1985 »
|
En línea
|
|
|
|
engel lex
|
Marco no es eso, ese parametro es opcional
Porque probablemente el query haya venido vacío y si no retorna nada "se" será false, usa un if para comprobar si no retornó valores
Por cierto ya esta desaconsejado usar la extensión de mysql, en su ligar usar mysqli o mysql pdo, mas info en php.net
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
marko1985
Desconectado
Mensajes: 46
|
Marco no es eso, ese parametro es opcional
Porque probablemente el query haya venido vacío y si no retorna nada "se" será false, usa un if para comprobar si no retornó valores
Por cierto ya esta desaconsejado usar la extensión de mysql, en su ligar usar mysqli o mysql pdo, mas info en php.net
Fíjate en el error que le sale: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/u815225632/public_html/check-login.php on line 17 También le faltan las comillas simples en el la variable. Que lo pruebe, es sólo una humilde opinion. Es cierto que está desaconsejado, pero antes de meterse en Clases y objetos debería de funcionar correctamente esto.
|
|
|
En línea
|
|
|
|
sergio98
Desconectado
Mensajes: 20
|
Gracias por las respuestas... pero nada, me sigue tirando el mismo error.
He probado a poner las comillas simples y también el valor opcional, ¿alguna idea más? Gracias
|
|
|
En línea
|
|
|
|
engel lex
|
Has un vardump a "se" dime que retornó
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
marko1985
Desconectado
Mensajes: 46
|
Gracias por las respuestas... pero nada, me sigue tirando el mismo error.
He probado a poner las comillas simples y también el valor opcional, ¿alguna idea más? Gracias
¿$user y $pass te salen en el navegador? USER y PASS los tienes con mayúsculas en la bbdd. Prueba sustituyendo la consulta así, $se = mysql_query("SELECT * FROM users where USER='$user'", $co);
|
|
|
En línea
|
|
|
|
sergio98
Desconectado
Mensajes: 20
|
Has un vardump a "se" dime que retornó
Booleano(false) Y sí, las variables $user y $password me aparecen en el navegador. Con el script que me has dado me sigue sin ir.
|
|
|
En línea
|
|
|
|
engel lex
|
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/u815225632/public_html/check-login.php on line 17 la funcion esperaba una variable conteniendo un resource, pero si el query no retorna nada, da false... y false es un booleano, asi que causa error, muestra de eso... revisa si en tu base de datos estan lo datos bien escritos usa el phpmyadmin para hacer el query
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
EFEX
Desconectado
Mensajes: 1.171
"Dinero Facil"
|
Esto pasa cuando no verificas primero que se realize la conexion con la db.. conectar con db > no se pudo conectar? > bump error(login incorrecto o whatever).
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problema con mysql_fetch_array()
PHP
|
[KMT]
|
5
|
3,453
|
4 Abril 2007, 11:20 am
por Luisango
|
|
|
Error mysql_fetch_array...
« 1 2 »
PHP
|
Noxors
|
12
|
6,346
|
30 Mayo 2008, 17:22 pm
por Noxors
|
|
|
error con mysql_fetch_array
« 1 2 3 »
PHP
|
Og.
|
20
|
10,007
|
27 Julio 2009, 21:25 pm
por Hadess_inf
|
|
|
Ayuda con mysql_fetch_array
« 1 2 »
Bases de Datos
|
royerphpmysql
|
14
|
8,134
|
17 Noviembre 2010, 04:53 am
por royerphpmysql
|
|
|
Problema con mysql_fetch_array
PHP
|
Macky25
|
3
|
3,505
|
21 Septiembre 2016, 15:45 pm
por engel lex
|
|