Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Warning:mysql_fetch_array() expects parameter 1

Estas en el tema de Warning:mysql_fetch_array() expects parameter 1 en el foro de PHP en Foros del Web. Hey amigos tengo un problemón Estoy diseñando un registro de usuarios, con validación pero en esta linea me salta un error y no logro saber ...
  #1 (permalink)  
Antiguo 07/01/2014, 16:10
Avatar de Zynfrid  
Fecha de Ingreso: enero-2014
Ubicación: Damodrail
Mensajes: 9
Antigüedad: 10 años, 3 meses
Puntos: 0
Exclamación Warning:mysql_fetch_array() expects parameter 1

Hey amigos tengo un problemón

Estoy diseñando un registro de usuarios, con validación pero en esta linea me salta un error y no logro saber que es lo que me falta.

El error que me aparece es este:

Código:
Warning:mysql_fetch_array_() expects parameter 1 to be resource, boolean given in....... on line 26
Este es el código completo

Código PHP:
<?php
    
/*

         eee
      eeee 
    */
 
    //conectar BD
    
include("conectar_bd.php");  
    
conectar_bd();
     
    
$usr $_POST['usuario'];
    
$pw $_POST['password'];
    
//Obtengo la version encriptada del password
    
$pw_enc md5($pw);
     
    
$sql "SELECT id_usuario FROM tbl_users
            INNER JOIN ctg_tiposusuario
            ON tbl_users.id_TipoUsuario = ctg_tiposusuario.id_TipoUsuario
            WHERE tx_username = '"
.$usr."'
            AND tx_password = '"
.$pw_enc."' ";  
    
$result     =mysql_query($sql,$conexio); 
 
    
$uid "";
     
    
//Si existe al menos una fila
    
if( $fila=mysql_fetch_array($result) )
    {       
        
//Obtener el Id del usuario en la BD        
        
$uid $fila['id_usuario'];
        
//Iniciar una sesion de PHP
        
session_start();
        
//Crear una variable para indicar que se ha autenticado
        
$_SESSION['autenticado']    = 'SI';
        
//Crear una variable para guardar el ID del usuario para tenerlo siempre disponible
        
$_SESSION['uid']            = $uid;
        
//CODIGO DE SESION
         
        //Crear un formulario para redireccionar al usuario y enviar oculto su Id 
?>
        <form name="formulario" method="post" action="principal.php">
            <input type="hidden" name="idUsr" value='<?php echo $uid ?>' />
        </form>
<?php
    
}
    else {
        
//En caso de que no exista una fila...
        //..Crear un formulario para redireccionar al usuario a la pagina de login 
        //enviandole un codigo de error
?>
        <form name="formulario" method="post" action="index.php">
            <input type="hidden" name="msg_error" value="1">
        </form>
<?php
    
}
?>
                     
<script type="text/javascript"> 
    //Redireccionar con el formulario creado
    document.formulario.submit();
</script>
Nosé si es un error bobo que yo no puedo ver o algo que escribí mal en la linea 26, no se me ocurre que puede ser. Me encontré muchas cosas sobre este error pero ninguna soluciona el problema, me vuelve a aparecer el error.

;) si me dan una alternativa le estaré eternamente agradecido!!!
  #2 (permalink)  
Antiguo 07/01/2014, 16:46
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Warning:mysql_fetch_array() expects parameter 1

OFF TOPIC en MySQL.

Movido a PHP.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 07/01/2014, 22:30
Avatar de Cuervoo  
Fecha de Ingreso: octubre-2013
Mensajes: 165
Antigüedad: 10 años, 6 meses
Puntos: 43
Respuesta: Warning:mysql_fetch_array() expects parameter 1

El error te dice que mysql_fetch_array recibe una variable del tipo resource y le estás pasando un booleano, porque la consulta está devolviendo error.

Agregale la verificación:

Código PHP:
Ver original
  1. $result = mysql_query($sql, $conexio);
  2.  
  3. if (!$result)
  4. {
  5.     die('La consulta tira este error: '.mysql_error());
  6. }

Y ahi vas a ver qué está pasando.
  #4 (permalink)  
Antiguo 07/01/2014, 23:09
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Warning:mysql_fetch_array() expects parameter 1

Solo por si las dudas, ¿estás seguro de que la variable de conexión se llama $conexio?, quizá es $conexion y por eso es que retorna el valor booleano FALSE, ya que, como lo indica el manual, si se produce un error, se retorna FALSE.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #5 (permalink)  
Antiguo 08/01/2014, 14:41
Avatar de Zynfrid  
Fecha de Ingreso: enero-2014
Ubicación: Damodrail
Mensajes: 9
Antigüedad: 10 años, 3 meses
Puntos: 0
Respuesta: Warning:mysql_fetch_array() expects parameter 1

Si, perfecto ya lo resolví!!

Con el código que me pasaste cuervo ya vi cual era el problema.

Muchas gracias!

Etiquetas: mysql, registro
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 19:34.