Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Error con mysqli

Estas en el tema de Error con mysqli en el foro de PHP en Foros del Web. Buenos días, estoy creando un login y a la hora de querer ingresar me manda el siguiente error: Este es el código php que hice ...
  #1 (permalink)  
Antiguo 22/02/2016, 14:59
 
Fecha de Ingreso: mayo-2015
Ubicación: Hermosillo
Mensajes: 9
Antigüedad: 8 años, 11 meses
Puntos: 0
Error con mysqli

Buenos días, estoy creando un login y a la hora de querer ingresar me manda el siguiente error:



Este es el código php que hice para iniciar sesión:

Código PHP:
//Aquí se inicia sesión en la base de datos de flor de capomo

 
session_start();
 
 
//Aquí se hace una inclusión de la conexión de la base de datos

 
include("conexion.php");

$nombre $_POST["user"];

$contra $_POST["password"];

  
//Aquí se hace la consulta a la base de datos, dependiendo de lo que se ingrese en los campos de texto del formulario de inicio de sesión
  
  
$consulta "SELECT correo, password from usuario where correo='".$_POST["user"]."' and password='".md5(($_POST["password"]))."'";
  
  
//Aquí se lleva a cabo el proceso de consulta dentro de la base de datos, en caso de no existir algún atributo, manda un mensaje de error
  
  
   
$query mysqli_query($conexion$consulta) or die("Usuario/Contrasena Invalido");
    
 
//Aquí se inicia una condición en la que en caso de que el número e usuarios que cumplan con la consulta anterior sea igual a 1, te redireccionara a la página mencionada en el header, de lo contrario, te mandara un popup con un mensaje de error
 
 
if($nombre  == "" && $contra == "" ){
     
    echo 
'<script>
                  alert("Favor de ingresar usuario y password"); 
                  window.location.href="administrador.php";
              </script>'

 
 }else if(
mysqli_num_rows($query)) {
     
  
$_SESSION["autentificado"] = 1;
  
$_SESSION["usuario"] = $_POST["user"];
  
$_SESSION["password"] = md5(($_POST["password"]));
  
  
header("Location: indexx.php");
  
  
$username=$_SESSION["user"];
  
 
  
 } else {
  
  echo 
'<script>
                  alert("Nombre de usuario y/o password incorrectos"); 
                  window.location.href="index.php";
              </script>'
;
  
 } 
Y esta es la conexión a la base de datos:

Código PHP:
//Aquí, se toman los datos de autenticación para la base de datos "flordecapomo" (dependiendo del servidor, estas variaran)

  
$hostname "127.0.0.1";
  
$username "root";
  
$password "";
  
$database "agenda";
  
  
//Aquí se lleva a cabo el proceso de conexión a la base de datos mandando un mensaje de error en caso de no llevarse a cabo
  /*
  $conexion = mysql_connect($hostname, $username, $password) or die("No se pudo conectar a mysql");
  
  mysql_select_db($database, $conexion) or die("No se pudo conectar a la base de datos");*/
  
  
  //Debido a que el metodo de arriba esta por ser obsoleto, se creo abajo una nueva conexión usando mysqli que es orientado a objetos
 
 
$conexion= new mysqli($hostname$username$password$database);
 
if (
$conexion -> connect_errno) {
    
die( 
"Fallo la conexión a MySQL: (" $conexion -> mysqli_connect_errno() 
") " $conexion -> mysqli_connect_error());
}
else



$conexion -> close(); 
El error me lo genera en el primer código en esta línea:

Código PHP:
$query mysqli_query($conexion$consulta) or die("Usuario/Contrasena Invalido"); 
Espero me puedan ayudar, de antemano se los agradecería, saludos.
  #2 (permalink)  
Antiguo 22/02/2016, 16:15
 
Fecha de Ingreso: diciembre-2015
Mensajes: 529
Antigüedad: 8 años, 4 meses
Puntos: 39
Respuesta: Error con mysqli

Prueba cambiando "127.0.0.1" por "localhost". Y como recomendación usa empty, en vez de
Código PHP:
Ver original
  1. if($nombre  == "" && $contra == "" ){

Saludos
  #3 (permalink)  
Antiguo 22/02/2016, 16:27
 
Fecha de Ingreso: mayo-2015
Ubicación: Hermosillo
Mensajes: 9
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Error con mysqli

Acabo de hacer los cambios que me dijiste:

Código PHP:
if(empty($nombre) && ($contra)){ 
y

Código PHP:
 $hostname "localhost"
pero me sigue generando el mismo error:

Warning: mysqli_query(): Couldn't fetch mysqli

No se que otra opción podría haber?, gracias por responder.
  #4 (permalink)  
Antiguo 22/02/2016, 18:08
Avatar de carlillos  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 245
Antigüedad: 17 años, 2 meses
Puntos: 21
Respuesta: Error con mysqli

Tu archivo conexion.php está cerrando la conexión antes de que realices la consulta, borra esta línea:
Código PHP:
Ver original
  1. $conexion -> close();
  #5 (permalink)  
Antiguo 22/02/2016, 18:35
 
Fecha de Ingreso: mayo-2015
Ubicación: Hermosillo
Mensajes: 9
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Error con mysqli

Jajaja, no había tenido en cuenta eso amigo, me salvaste, muchas gracias por la ayuda.

Etiquetas: formulario, mysql, mysqli, select, sql, usuarios
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 02:35.