Do not insert any record in my Mysqli-Php database

0

Could someone please help me identify what could be wrong with my code ?, I followed the syntax to insert records with Mysqli but I could not solve my problem: This is my connection to the BD:

I have it in a folder (lib) config.php

<?php    

$mysqli = new mysqli("localhost", "root", "", "prueba");

if($mysqli->connect_errno) {
    echo "Falló la conexion a la base de datos";
}

return $mysqli;

?>

Este es mi registro.php

<?php
ob_start();
?>

<!DOCTYPE html>
<html lang="es">  

    <form action="" method="post">

      <div class="form-group has-feedback">

        <input type="text" name="nombre" class="form-control" placeholder="Nombre completo" required>

        <span class="glyphicon glyphicon-star form-control-feedback"></span>

      </div>

      <div class="form-group has-feedback">

        <input type="email" name="email" class="form-control" placeholder="Email" required>  
        <span class="glyphicon glyphicon-envelope form-control-feedback"></span>
      </div>
      <div class="form-group has-feedback">
        <input type="text" name="usuario" class="form-control" placeholder="Usuario" required>
        <span class="glyphicon glyphicon-user form-control-feedback"></span>
      </div>
      <div class="form-group has-feedback">
        <input type="password" name="contrasena" class="form-control" placeholder="Contraseña" required>
        <span class="glyphicon glyphicon-lock form-control-feedback"></span>
      </div>
     <div class="form-group has-feedback">
        <input type="password" name="repcontrasena" class="form-control" placeholder="Repita la contraseña" required>
        <span class="glyphicon glyphicon-log-in form-control-feedback"></span>
      </div>
      <div class="row">
        <div class="col-xs-10">
          <div class="checkbox icheck">
            <label>

              <input type="checkbox" name="check" required> Acepto los <a href="#">términos y condiciones</a>
            </label>
          </div>
        </div>
        <!-- /.col -->
        <div class="col-xs-12">
          <button type="submit" name="registrar" class="btn btn-primary btn-block btn-flat">Registrarme</button>
        </div>
        <!-- /.col -->
      </div>
    </form>
<body>

    <?php
    if(isset($_POST['registrar'])) {

    require("lib/config.php");

      $nombre = $mysqli->real_escape_string($_POST['nombre']);
      $email = $mysqli->real_escape_string($_POST['email']);
      $usuario = $mysqli->real_escape_string($_POST['usuario']);
      $contrasena = md5($_POST['contrasena']);
      $repcontrasena = md5($_POST['repcontrasena']);


      $comprobarusuario = "SELECT usuario FROM usuarios WHERE usuario = '$usuario'";
      $comprobaremail = "SELECT email FROM usuarios WHERE email = '$email'";

    if($resultadousuario = $mysqli->query($comprobarusuario));
    $numerousuario = $resultadousuario->num_rows;

    if($resultadoemail = $mysqli->query($comprobaremail));
    $numeroemail = $resultadoemail->num_rows;

    if($numeroemail>0) {
      echo "Este correo ya esta registrado, intenta con otro.";
    }

    elseif($numerousuario>0) {
      echo "Este usuario ya existe.";
    }

    elseif($contrasena != $repcontrasena) {
    echo "Las contraseñas no coinciden.";
    }
    else {

      $query = "INSERT INTO usuarios (nombre,email,usuario,contrasena,fecha_reg) values ('$nombre','$email','$usuario','$contrasena',now())";

       if($registrar = $mysqli->query($query)) {
        echo "Felicidades $usuario se ha registrado correctamente, te hemos enviado un correo de confirmacion.";
    header("Refresh: 2; URL=login.php");

    }
      else {

        echo "Ha ocurrido un error en el registro, intentelo de nuevo";
        header("Refresh: 2; URL=registro.php");

      }


    }

    $mysqli->close();

    }
    ?>


    <br>
    <a href="login.php" class="text-center">Tengo actualmente una cuenta</a>

    </body>
    </html>
    <?php
    ob_end_flush();
    ?>

And this is the structure of my Bd:

Name of my BD: proof.

Table: users.

Campos: id_use int(11) auto_increment primary key.    
nombre varchar(100).    
usuario varchar(100).    
contrasena varchar(100).    
nacimiento date.    
avatar varchar(200).    
email varchar(100).    
sexo varchar(100).    
fecha_reg datetime.    
verificado int(11).    
privada int(11).
    
asked by Noctis 12.06.2018 в 00:52
source

0 answers