Advertisement
JnicolaslazaroC

Untitled

Oct 27th, 2016
326
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 5.58 KB | None | 0 0
  1. <?php
  2. include('is_logged.php');//Archivo verifica que el usario que intenta acceder a la URL esta logueado
  3. // checking for minimum PHP version
  4. if (version_compare(PHP_VERSION, '5.3.7', '<')) {
  5.     exit("Sorry, Simple PHP Login does not run on a PHP version smaller than 5.3.7 !");
  6. } else if (version_compare(PHP_VERSION, '5.5.0', '<')) {
  7.     // if you are using PHP 5.3 or PHP 5.4 you have to include the password_api_compatibility_library.php
  8.     // (this library adds the PHP 5.5 password hashing functions to older versions of PHP)
  9.     require_once("../libraries/password_compatibility_library.php");
  10. }      
  11.         if (empty($_POST['nombres'])){
  12.             $errors[] = "Nombres vacíos";
  13.         } elseif (empty($_POST['apellidos'])){
  14.             $errors[] = "Apellidos vacíos";
  15.         } elseif (empty($_POST['dni'])){
  16.             $errors[] = "Dni vacio";
  17.         } elseif (empty($_POST['cargo'])){
  18.             $errors[] = "Cargo vacio";        
  19.         }  elseif (empty($_POST['usuario'])) {
  20.             $errors[] = "Nombre de usuario vacío";
  21.         } elseif (empty($_POST['user_password_new']) || empty($_POST['user_password_repeat'])) {
  22.             $errors[] = "Contraseña vacía";
  23.         } elseif ($_POST['user_password_new'] !== $_POST['user_password_repeat']) {
  24.             $errors[] = "la contraseña y la repetición de la contraseña no son lo mismo";
  25.         } elseif (strlen($_POST['user_password_new']) < 6) {
  26.             $errors[] = "La contraseña debe tener como mínimo 6 caracteres";
  27.         } elseif (strlen($_POST['usuario']) > 64 || strlen($_POST['usuario']) < 2) {
  28.             $errors[] = "Nombre de usuario no puede ser inferior a 2 o más de 64 caracteres";
  29.         } elseif (!preg_match('/^[a-z\d]{2,64}$/i', $_POST['usuario'])) {
  30.             $errors[] = "Nombre de usuario no encaja en el esquema de nombre: Sólo aZ y los números están permitidos , de 2 a 64 caracteres";
  31.         } elseif (
  32.             !empty($_POST['usuario'])
  33.             && !empty($_POST['nombres'])
  34.             && !empty($_POST['apellidos'])
  35.             && !empty($_POST['dni'])
  36.             && !empty($_POST['cargo'])
  37.             && strlen($_POST['usuario']) <= 64
  38.             && strlen($_POST['usuario']) >= 2
  39.             && preg_match('/^[a-z\d]{2,64}$/i', $_POST['usuario'])
  40.             && !empty($_POST['user_password_new'])
  41.             && !empty($_POST['user_password_repeat'])
  42.             && ($_POST['user_password_new'] === $_POST['user_password_repeat'])
  43.         ) {
  44.             require_once ("../config/db.php");//Contiene las variables de configuracion para conectar a la base de datos
  45.             require_once ("../config/conexion.php");//Contiene funcion que conecta a la base de datos
  46.            
  47.                 // escaping, additionally removing everything that could be (html/javascript-) code
  48.                 $nombres = mysqli_real_escape_string($con,(strip_tags($_POST["nombres"],ENT_QUOTES)));
  49.                 $apellidos = mysqli_real_escape_string($con,(strip_tags($_POST["apellidos"],ENT_QUOTES)));
  50.                 $dni = mysqli_real_escape_string($con,(strip_tags($_POST["dni"],ENT_QUOTES)));
  51.                 $cargo = mysqli_real_escape_string($con,(strip_tags($_POST["cargo"],ENT_QUOTES)));
  52.                 $usuario = mysqli_real_escape_string($con,(strip_tags($_POST["usuario"],ENT_QUOTES)));
  53.                 $user_password = $_POST['user_password_new'];
  54.                 $fecha=date("Y-m-d H:i:s");
  55.                 // crypt the user's password with PHP 5.5's password_hash() function, results in a 60 character
  56.                 // hash string. the PASSWORD_DEFAULT constant is defined by the PHP 5.5, or if you are using
  57.                 // PHP 5.3/5.4, by the password hashing compatibility library
  58.                 $contraseña = password_hash($user_password, PASSWORD_DEFAULT);
  59.                    
  60.                 // check if user or email address already exists
  61.                 $sql = "SELECT * FROM trabajador WHERE usuario = '" . $usuario . "' OR cargo = '" . $cargo . "';";
  62.                 $query_check_user_name = mysqli_query($con,$sql);
  63.                 $query_check_user=mysqli_num_rows($query_check_user_name);
  64.                 if ($query_check_user == 1) {
  65.                     $errors[] = "Lo sentimos , el nombre de usuario ya está en uso.";
  66.                 } else {
  67.                     // write new user's data into database
  68.                     $sql = "INSERT INTO trabajador (nombres, apellidos, dni, cargo, usuario, contraseña, fecha)
  69.                            VALUES('".$nombres."','".$apellidos."','".$dni."','" . $cargo . "', '" . $usuario . "', '" . $contraseña ."');";
  70.                     $query_new_user_insert = mysqli_query($con,$sql);
  71.  
  72.                     // if user has been added successfully
  73.                     if ($query_new_user_insert) {
  74.                         $messages[] = "La cuenta ha sido creada con éxito.";
  75.                     } else {
  76.                         $errors[] = "Lo sentimos , el registro falló. Por favor, regrese y vuelva a intentarlo.";
  77.                     }
  78.                 }
  79.            
  80.         } else {
  81.             $errors[] = "Un error desconocido ocurrió.";
  82.         }
  83.        
  84.         if (isset($errors)){
  85.            
  86.             ?>
  87.             <div class="alert alert-danger" role="alert">
  88.                 <button type="button" class="close" data-dismiss="alert">&times;</button>
  89.                     <strong>Error!</strong>
  90.                     <?php
  91.                         foreach ($errors as $error) {
  92.                                 echo $error;
  93.                             }
  94.                         ?>
  95.             </div>
  96.             <?php
  97.             }
  98.             if (isset($messages)){
  99.                
  100.                 ?>
  101.                 <div class="alert alert-success" role="alert">
  102.                         <button type="button" class="close" data-dismiss="alert">&times;</button>
  103.                         <strong>¡Bien hecho!</strong>
  104.                         <?php
  105.                             foreach ($messages as $message) {
  106.                                     echo $message;
  107.                                 }
  108.                             ?>
  109.                 </div>
  110.                 <?php
  111.             }
  112.  
  113. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement