daily pastebin goal
75%
SHARE
TWEET

Untitled

a guest Jun 19th, 2017 51 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2.  
  3. // conexion a mysql
  4.  
  5. function conexion_db () {
  6.     $conexion = mysql_connect('localhost', 'root', '');
  7.     return $conexion;
  8. }
  9.  
  10. // seleccionar db
  11.  
  12. function usar_db ($nombre_db) {
  13.     mysql_select_db($nombre_db, conexion_db());
  14. }
  15.  
  16. // filtrar espacios y tags
  17.  
  18. function filtrarDato ($cadena) {
  19.     $filtrado = trim(strip_tags($cadena));
  20.     return $filtrado;
  21. }
  22.  
  23. // validacion usuario
  24.  
  25. function campoVacio ($cadena) {
  26.     $resultado = (preg_match('/^([a-z0-9_]+){6,20}$/', strtolower(filtrarDato($cadena)))) ? 1 : 0;
  27.     return $resultado;
  28. }
  29.  
  30. // validacion correo
  31.  
  32. function emailUsuarioValido ($usuario_email) {
  33.     $resultado = (preg_match('/^[^@]+@[a-zA-Z0-9._-]+\.[a-zA-Z]+$/i', filtrarDato($usuario_email))) ? 1 : 0;
  34.     return $resultado;
  35. }
  36.  
  37. // los campos son iguales ?
  38.  
  39. function camposIguales ($x, $y) {
  40.     $resultado = ($x == $y) ? 1 : 0;
  41.     return $resultado;
  42. }
  43.  
  44. // funcion para el registro
  45.  
  46. function nuevoRegistro ($nombre_usuario, $email_usuario, $pwd_usuario_one, $pwd_usuario_two) {
  47.     // validar usuario_nombre
  48.     if (!campoVacio($nombre_usuario)) {
  49.         throw new Exception("Nombre de usuario no valido. debe contener 6-20 caracteres.");
  50.     }
  51.     // validar_email
  52.     if (!emailUsuarioValido($email_usuario)) {
  53.         throw new Exception("Email de usuario no valido.");
  54.     }
  55.     // validar_passwords
  56.     if (!campoVacio($pwd_usuario_one)) {
  57.         throw new Exception("Debe proporcionar una contraseña, entre 6-20 caracteres.");
  58.     }
  59.     if (!campoVacio($pwd_usuario_two)) {
  60.         throw new Exception("Confirmar la contraseña, entre 6-20 caracteres.");
  61.     }
  62.     if (!camposIguales($pwd_usuario_one, $pwd_usuario_two)) {
  63.         throw new Exception("Las contraseñas deben coincidir.");
  64.     }
  65.     // conexion a mysql y verificacion si existe el registro
  66.     $consulta = "SELECT * FROM `usuarios_tbl` WHERE `nombre_usuario` = '" . strtolower(filtrarDato(mysql_real_escape_string($nombre_usuario))) . "'";
  67.     $resultado = mysql_query($consulta);
  68.     $respuesta = mysql_num_rows($resultado);
  69.     if ($respuesta > 0) {
  70.         // el usuario ya existe
  71.         throw new Exception("Ese nombre ya esta en uso, por favor elija otro.");
  72.     } else {
  73.         // registrar al usuario
  74.         $usuario = strtolower(filtrarDato(mysql_real_escape_string($nombre_usuario)));
  75.         $correo = filtrarDato(mysql_real_escape_string($email_usuario));
  76.         $clave = filtrarDato(mysql_real_escape_string($pwd_usuario_one));
  77.         $consulta_2 = "INSERT INTO `usuarios_tbl` (`nombre_usuario`, `clave_usuario`, `email_usuario`, `fecha_registro`) VALUES ('$usuario', md5('$clave'), '$correo', now())";
  78.         if (mysql_query($consulta_2))
  79.             echo '<p class="success_message">Usted se registro con exito.</p>';
  80.         else
  81.             throw new Exception("Ups, ocurrio un error durante el registro.");
  82.     }
  83. }
  84.  
  85. ?>
RAW Paste Data
Top