Foros del Web » Programando para Internet » PHP »

Probremas con validacion de campos en formulario de registro

Estas en el tema de Probremas con validacion de campos en formulario de registro en el foro de PHP en Foros del Web. Hola aqui otra vez preguntando, a ver si alguien me puede ayudar. Estoy haciendo un formulario de registro y estoy validando los campos y.... aca ...
  #1 (permalink)  
Antiguo 27/05/2011, 11:56
 
Fecha de Ingreso: marzo-2011
Ubicación: bs as
Mensajes: 26
Antigüedad: 13 años, 9 meses
Puntos: 0
Probremas con validacion de campos en formulario de registro

Hola aqui otra vez preguntando, a ver si alguien me puede ayudar.
Estoy haciendo un formulario de registro y estoy validando los campos y.... aca viene el problema. va todo bien cuando valido para que no dejen en blanco los campo tambien cuando especifico que el nombre de usuario tiene q seer mayor a 5 caracteres
pero ..... cuando hago las pruebas para el resto de los campos (contraseña: <5; CUIT: sólo nº y q sean 11 dígitos; teléfono: sólo nº; email) aca viene el problema, no me aparece el mensaje de error de cada uno de ellos sólo me aparece la palabra "regresar".
no se q esta mal en el código

bueno espero q alguien me pueda ayudar,
1000 gracias!

les dejo el código y la web es [URL="http://www.moppa.com.ar"]www.moppa.com.ar[/URL]

Código PHP:
<?
 
if (isset($_POST['usuario']) && !empty($_POST['usuario']) && 
    isset(
$_POST['contrasena']) && !empty($_POST['contrasena']) &&
    isset(
$_POST['empresa']) && !empty($_POST['empresa']) &&
    isset(
$_POST['cuit']) && !empty($_POST['cuit']) &&
    isset(
$_POST['direccion']) && !empty($_POST['direccion']) &&
    isset(
$_POST['localidad']) && !empty($_POST['localidad']) &&
    isset(
$_POST['codigo_postal']) && !empty($_POST['codigo_postal']) &&
    isset(
$_POST['telefono']) && !empty($_POST['telefono']) &&
    isset(
$_POST['email']) && !empty($_POST['email'])) 
    {
    
$usuario=$_POST['usuario'];
if(
strlen($usuario) <5)

echo 
"Error. El nombre de usuario debe ser mayor de 5 letras.";
echo 
"<br>";
echo 
"<a href=\"javascript:history.back()\"><br><strong>Regresar</strong></a>";
    exit;
} else { 
    if(!
preg_match("/^[a-zA-Z]+$/"$usuario))
    echo 
"Error. El nombre de usuario s&oacute;lo debe contener letras.";
    echo 
"<br>";
    echo 
"<a href=\"javascript:history.back()\"><br><strong>Regresar</strong></a>";
exit; 
            
}    {
$contrasena=$_POST['contrasena'];
if(
strlen($contrasena)<5)
 echo 
"Error. El contrase&ntilde;a debe ser mayor de 5 letras.";
 echo 
"<br>";
 echo 
"<a href=\"javascript:history.back()\"><br><strong>Regresar</strong></a>";
 exit;
}

$cuit=$_POST['cuit'];     
    if(!
is_numeric($cuit)){
     echo 
"Error. N&uacute;mero de CUIT inv&aacute;lido.";
     echo 
"<br>";
    echo 
"<a href=\"javascript:history.back()\"><br><strong>Regresar</strong></a>";
     exit;
    } else { 
    if(!
strlen($cuit) ==11
     echo 
"Error. N&uacute;mero de CUIT inv&aacute;lido, debe ingresar 11 n&uacute;meros .";
     echo 
"<br>";
     echo 
"<a href=\"javascript:history.back()\"><br><strong>Regresar</strong></a>";
     exit;
     }
    
 if(
is_numeric($_POST['telefono'])) {
//Insertamos
} else {
 echo 
"Error. En tel&eacute;fono debe insertar un campo num&eacute;rico ";
 echo 
"<br>";
 echo 
"<a href=\"javascript:history.back()\"><br><strong>Regresar</strong></a>"
 exit;
}

$email=$_POST['email'];
if(
eregi("^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$"$email)){   
     }   
   else { 
 echo 
"Error, al insertar direcci&oacute;n de mail. ";
 echo 
"<br>";
echo 
"<a href=\"javascript:history.back()\"><br><strong>Regresar</strong></a>"
    exit;
}

    
//1. Crear conexión a la Base de Datos
$link mysql_connect(".........","..........","............");
                if (!
$link
    {
die(
"Falló la conexión a la Base de Datos:"mysql_error());
    }
//2. Seleccionar la Base de Datos a utilizar
mysql_select_db("..........",$link);
if (!
mysql_select_db
{    
die(
"Fallo la selección de la Base de Datos: "mysql_error());
            }
else {
    
//3. Tomar los campos provenientes del Formulario
    
$usuario=$_POST['usuario'];
$contrasena=$_POST['contrasena'];
$empresa=$_POST['empresa'];
$cuit=$_POST['cuit'];
$direccion=$_POST['direccion'];
$localidad=$_POST['localidad'];
$codigo_postal=$_POST['codigo_postal'];
$telefono=$_POST['telefono'];
$email=$_POST['email'];


// consultamos a la tabla de usuarios si el nick ya existe
$newuser mysql_query("SELECT usuario from usuarios where usuario='".$usuario."'",$link);
$newuser mysql_query("SELECT email from usuarios where email='".$email."'",$link);
if(
$row mysql_fetch_array($newuser)) 
    {
    echo 
"<br>"
    echo 
"<br>";
    echo 
"<br>";
    echo 
"<strong> El usuario registrado ya se encuentra en uso";
    echo 
"<a href=\"javascript:history.back()\"><br>Regresar</a>"
    exit;
    }
     else{ 
//5. Insertar campos en la Base de Datos

// Con esta sentencia SQL insertaremos los datos en la base     de datos
    
mysql_query("INSERT INTO usuarios (usuario,contrasena,empresa,cuit,direccion,localidad,codigo_postal,telefono,email)
VALUES ('{$_POST['usuario']}','{$_POST['contrasena']}','{$_POST['empresa']}','{$_POST['cuit']}','{$_POST['direccion']}','{$_POST['localidad']}','{$_POST['codigo_postal']}','{$_POST['telefono']}','{$_POST['email']}')"
,$link);
        
    if (!
mysql_query
    {
die(
"Fallo en la insercion de registro en la Base de Datos: " mysql_error());
    }
else {
echo 
"Los datos han sido introducidos satisfactoriamente.";
                            echo 
"<br>"
                            echo 
"<br>";
                            echo 
"<br>"
                            echo 
"<em><strong>Usuario: </strong></em>".$_REQUEST['usuario'];  
                            echo 
"<br>"
                            echo 
"<em><strong>Empresa: </strong></em>".$_REQUEST['empresa'];
                            echo 
"<br>"
                            echo 
"<em><strong>CUIT: </strong></em>".$_REQUEST['cuit'];
                            echo 
"<br>"
                            echo 
"<em><strong>Direcci&oacute;n: </strong></em>".$_REQUEST['direccion'];
                            echo 
"<br>"
                            echo 
"<em><strong>Localidad: </strong></em>".$_REQUEST['localidad'];
                            echo 
"<br>"
                            echo 
"<em><strong>C&oacute;digo postal: </strong></em>".$_REQUEST['codigo_postal'];
                            echo 
"<br>"
                            echo 
"<em><strong>Tel&eacute;fono: </strong></em>".$_REQUEST['telefono'];
                            echo 
"<br>";     
                            echo 
"<em><strong>email: </strong></em>".$_REQUEST['email']; 
        }
    }
        
        
//4. variables para funcion de envio del mail
if(isset($_POST['Submit']))
    {  
    
$usuario=$_POST['usuario'];  
    
$empresa=$_POST['empresa'];  
    
$email=$_POST['email']; 
    
$chek_email "SELECT * FROM clientes_registro WHERE email='$email'"//mail
    
$result mysql_query($chek_email); 
    
$numrows mysql_num_rows($result);  
    if (
$numrows!=0
    { 
    echo 
"<font color='#FF0000'><b>Error</b> </font> el email ".$_POST['email']." ya existe, por favor intente con otro"
        exit(); 
        } 
    } 
else {            

$headers "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: Moppa website <$remitente>\r\n";
$header .= "X-Mailer: PHP/" phpversion() . " \r\n";

$mensaje "Este mensaje fue enviado desde Moppa Website\r\n";
$mensaje .= "Usuario: " $usuario " \r\n";
$mensaje .= "Empresa: " $empresa " \r\n";
$mensaje .= "Cuit: " $cuit " \r\n";
$mensaje .= "Dirección: " $direccion " \r\n";
$mensaje .= "Localidad: " $localidad " \r\n";
    
$mensaje .= "Código Postal: " $codigo_postal " \r\n";
$mensaje .= "Teléfono: " $telefono " \r\n";
$mensaje .= "email: " $email " \r\n";
$mensaje .= "Enviado el " date('d/m/Y'time());
$para '[email protected]';
$asunto 'Nuevo usuario en Moppa Website';

mail($para$asuntoutf8_decode($mensaje), "From: $de_email");
                    }
        }
    }}

 else {

        echo 
"Error, no ha introducido todos los datos";
        echo 
"<br>";
        echo 
"<a href=\"javascript:history.back()\"><br><strong>Regresar</strong></a>";


    }
    
?>
  #2 (permalink)  
Antiguo 27/05/2011, 12:22
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 10 meses
Puntos: 53
Respuesta: Probremas con validacion de campos en formulario de registro

a simple vista pueden ser las llaves de tus if algunos no los abres otros no los cierras y unos por ahi q estan perdidos :

Cita:
echo "<br>";
echo "<a href=\"javascript:history.back()\"><br><strong>Reg resar</strong></a>";
exit;

} {<<<<<<<<<<<<<<---?????
$contrasena=$_POST['contrasena'];
if(strlen($contrasena)<5)
echo "Error. El contrase&ntilde;a debe ser mayor de 5 letras.";
echo "<br>";
echo "<a href=\"javascript:history.back()\"><br><strong>Reg resar</strong></a>";
exit;
}
verifica bien tus llaves y observa si te sigue dando el mismo error
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #3 (permalink)  
Antiguo 27/05/2011, 12:32
 
Fecha de Ingreso: marzo-2011
Ubicación: bs as
Mensajes: 26
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Probremas con validacion de campos en formulario de registro

si supuse que eran problemas con las llaves pero ... la verdad no me puedo dar cuenta de cuales son las perdidas . es q tanto código me nublo la vista jaj.
No soy muy ducha en esto pero de a poco voy aprendiendo = muchas gracias!!
  #4 (permalink)  
Antiguo 27/05/2011, 12:41
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 10 meses
Puntos: 53
Respuesta: Probremas con validacion de campos en formulario de registro

te recomendaria q validaras los campos con javascript para no dar muchas vueltas entre ventanas entre regresar y continuar seria muy tedioso

recuerda
Cita:
Código PHP:
Ver original
  1. if(condicion)
  2.      {
  3.      accion
  4.      if(condicion2)
  5.           {
  6.           accion
  7.            }
  8.        }
  9.       else
  10.        {
  11.        accion
  12.         }
acomodar las llaves ayuda a saber cual es cual
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #5 (permalink)  
Antiguo 27/05/2011, 12:52
 
Fecha de Ingreso: marzo-2011
Ubicación: bs as
Mensajes: 26
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Probremas con validacion de campos en formulario de registro

tienes razon voy a ver como lo hago.
Seria poner todas las condiciones al principio del formulario para q valide los campos no?
gracais!
  #6 (permalink)  
Antiguo 27/05/2011, 12:55
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 10 meses
Puntos: 53
Respuesta: Probremas con validacion de campos en formulario de registro

una funcion en javascript ara validar campos vacios y con tu bton de submit mandalr a llamar en la parte de javascript hay ejemplos de eso

suerte
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #7 (permalink)  
Antiguo 27/05/2011, 13:17
 
Fecha de Ingreso: marzo-2011
Ubicación: bs as
Mensajes: 26
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Probremas con validacion de campos en formulario de registro

Muchas gracias!!!
saludos

Etiquetas: campos, registro, usuarios, validación, formulario
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 22:44.