Foros del Web » Programando para Internet » PHP »

Como recoger los 4 primeros caracteres del nombre y del apellido de un usuario

Estas en el tema de Como recoger los 4 primeros caracteres del nombre y del apellido de un usuario en el foro de PHP en Foros del Web. Hola, que tal? Saludos Estoy haciendo una práctica en la cual un usuario al registrarse se crea automaticamente su "usuario" para poder entrar (iniciando sesión). ...
  #1 (permalink)  
Antiguo 23/03/2014, 10:42
 
Fecha de Ingreso: marzo-2013
Mensajes: 36
Antigüedad: 11 años, 7 meses
Puntos: 1
Como recoger los 4 primeros caracteres del nombre y del apellido de un usuario

Hola, que tal?
Saludos
Estoy haciendo una práctica en la cual un usuario al registrarse se crea automaticamente su "usuario" para poder entrar (iniciando sesión).
Con las 4 primeras letras del nombre + las del apellido.

Si el usuario se llama Carlos Perez Hernandez (usando solamente el primer apellido), que su usuario sea:

carlpere

Y
Si se diera el caso de que esta combinación se repite, añadir un número,

carlpere1.


trabajo con formularioRegistro desde donde se cogen los datos del registro:

Código HTML:
Ver original
  1. Nombre: <input type="text" name="nombre_control"/>
  2. <br />
  3.     Apellidos: <input type="text" name="apellidos_control" />

y funciones.php


Código PHP:
Ver original
  1. function signup () {
  2.  
  3.         $nombre=$_POST["nombre_control"];
  4.         $password=$_POST["pass_control"];
  5.         $apellidos=$_POST["apellidos_control"];
  6.         $telefono=$_POST["telefono_control"];
  7.         $mail=$_POST["mail_control"];
  8.         $dni = $_POST["dni"];
  9.         $cargo = 0;
  10.  
  11.         $password = md5($password);
  12.  
  13.         if(validarDNI($dni)){
  14.  
  15.             mysql_query("INSERT INTO usuarios (nombre,apellidos,usuario,DNI,carrego,password,telefono,mail) VALUES (\"$nombre\",\"$apellidos\",'dasd',\"$dni\",\"$cargo\",\"$password\",\"$telefono\",\"$mail\")");
  16.                             header("location:paginaInici.php");

Actualmente le doy ya un valor por defecto a "usuario" para comprobar que los datos se insertan de forma correcta y se insertan bien.

Muchas gracias y saludos
  #2 (permalink)  
Antiguo 23/03/2014, 22:34
 
Fecha de Ingreso: diciembre-2012
Mensajes: 69
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Como recoger los 4 primeros caracteres del nombre y del apellido de un usu

Código PHP:
Ver original
  1. <?php
  2. /*
  3.     Tomando como ejemplo el campo usuario el escenario seria el siguiente:
  4.     usuario = $4_char_nombre+4_char_appaterno^#
  5.    
  6.     entonces el paso 1 seria armar el campo usuario con el post que mandas
  7. */
  8.         $nombre    = trim($_POST["nombre_control"]);
  9.         $apellido  = trim($_POST['apellidos_control']);
  10.         $usuario   = substr($nombre,0 , 4).substr($apellido,0 , 4);
  11. /*  
  12.     Una vez obtenido buscamos si ya existe el nombre en la BD y tomar solo el del valor maximo.
  13. */  
  14.        
  15.     $sql_valida     = "SELECT MAX(id), usuario FROM  usuario LIKE ('$usuario%') ";
  16.     $result_valida  = mysql_query($sql_valida) or die("Algo fallo $sql_valida");
  17.     $row_valida     = mysql_fetch_assoc($result);
  18.            
  19.     if($row_valida['usuario'])
  20.     {   //Existe generar el ultimo numero + 1
  21.         $numero_proximo = 1;
  22.         //Suponiendo que ningun usuario usa numeros XD
  23.         $numero_proximo += ereg_replace("[^0-9]", "", $row_valida['usuario']);
  24.         $usuario.=$numero_proximo;
  25.     }
  26.  
  27.     //A insertar
  28.     $sql_insert = " INSERT INTO usuarios set nombre='$nombre',
  29.        apellidos   = '$apellido',
  30.        usuario     = '$usuario',
  31.        DNI         = '$dni',
  32.        carrego     = '$carrego',
  33.        password    = '$password',
  34.        telefono    = '$telefono',
  35.        mail        = '$mail' ";
  36.  
  37.     mysql_query($sql_insert) or die("Algo fallo al agregar usuarios $sql_insert");
  38.  
  39.     echo "<h1>Se registro el usuario $usuario</h1>";
  40.  
  41.     /*no se si funcione todo esto pero tiene 'logica' xD*/
  42. ?>

Saludos!

Etiquetas: caracteres, formulario, mysql, nombre, primeros, recoger, registro, usuario, 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 10:49.