Foros del Web » Programando para Internet » PHP »

como puedo hacer que el mínimo de dígitos sea 6

Estas en el tema de como puedo hacer que el mínimo de dígitos sea 6 en el foro de PHP en Foros del Web. Como puedo hacer que el mínimo de dígitos sea 6 caracteres en la contraseña o cual quier otro input type Espero me puedan responder esta ...
  #1 (permalink)  
Antiguo 28/12/2011, 20:04
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
como puedo hacer que el mínimo de dígitos sea 6

Como puedo hacer que el mínimo de dígitos sea 6 caracteres en la contraseña o cual quier otro input type

Espero me puedan responder esta preguntita jeje...

Gracias de ante mano
  #2 (permalink)  
Antiguo 28/12/2011, 20:31
 
Fecha de Ingreso: julio-2005
Mensajes: 204
Antigüedad: 18 años, 8 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Depende para que lo quieras usar.
Lo puedes validar con Expresiones regulares.

Sino tambièn php tiene una funcion que se llama strlen o algo asi que te dice la cantidad de caracteres
  #3 (permalink)  
Antiguo 28/12/2011, 21:00
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Cita:
Iniciado por elburdel Ver Mensaje
Depende para que lo quieras usar.
Lo puedes validar con Expresiones regulares.

Sino tambièn php tiene una funcion que se llama strlen o algo asi que te dice la cantidad de caracteres
puedes poner me un código de ejemplo por favor.

Soy nuevo en esto. Gracias de todas formas
  #4 (permalink)  
Antiguo 28/12/2011, 21:34
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Lee ésto:
http://mx2.php.net/strlen
http://www.php.net/manual/es/control-structures.if.php
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #5 (permalink)  
Antiguo 28/12/2011, 21:57
Avatar de ZoroRoronoa  
Fecha de Ingreso: marzo-2011
Ubicación: California, USA
Mensajes: 824
Antigüedad: 13 años
Puntos: 116
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Te recomiendo el primer link de sourcegeek.
Es facil, solamente con una condicion y listo...

Código PHP:
Ver original
  1. $variable = $_POST['Campo de los 6 digitos'];
  2. $validar = strlen($variable);
  3. if($validar >=6) {
  4. echo "Listo";
  5. } else {
  6. echo "Vuelva a ingresar, no se permiten menos de 6 dig.";
  7. }

Saludos.
__________________
Programador jQuery & PHP
  #6 (permalink)  
Antiguo 28/12/2011, 23:05
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Muchas gracias por su ayuda. Ahora mismo probare los código :D
--------------------------------------------------------------------------------------

Ayuda por favor tengo como 5 hora intentando y nada que logro poner le el mínimo de 6 dígitos de contraseña, Aquí les dejo el código espero, me ayuden y perdonen me por preguntar tanto :D...

Cita:
<?php
}
// verificamos si se han enviado ya las variables necesarias.
if (isset($_POST["Username"])) {
$Username = $_POST["Username"];
$password = $_POST["password"];
$password2 = $_POST["password2"];
$email = $_POST["email"];
$realname = $_POST["realname"];
$Idnumber = $_POST["Idnumber"];
$Question = $_POST["Question"];
$answer = $_POST["answer"];
$Country = $_POST["Country"];
$City = $_POST["City"];
// Hay campos en blanco
if($Username==NULL|$password==NULL|$password2==NUL L|$email==NULL|$realname==NULL|$Idnumber==NULL|$Qu estion==NULL|$answer==NULL|$Country==NULL|$City==N ULL) {
echo "un campo está vacio.";
formRegistro();
}else{
// ¿Coinciden las contraseñas?
if($password!=$password2) {
echo "Las contraseñas no coinciden";
formRegistro();
}else{
// Comprobamos si el nombre de Usuario o la cuenta de correo ya existían
$checkuser = mysql_query("SELECT Username FROM accounts WHERE Username='$Username'");
$Username_exist = mysql_num_rows($checkuser);
$checkemail = mysql_query("SELECT email FROM accounts WHERE email='$email'");
$email_exist = mysql_num_rows($checkemail);
if ($email_exist>0|$Username_exist>0) {
echo "El nombre de Usuario o la cuenta de correo estan ya en uso";
formRegistro();
}else{
date_default_timezone_set('America/Mexico_City');//Averigua tu zona
$date = date("Y/m/d - h:i:s", time());

$query = 'INSERT INTO accounts (Username, password, email, realname, Idnumber, Question, answer, Country, City, fecha)
VALUES (\''.$Username.'\',\''.$password.'\',\''.$email.'\ ',\''.$realname.'\',\''
.$Idnumber.'\',\''.$Question.'\',\''.$answer.'\',\ ''.$Country.'\',\''.$City.'\',\''.date("Y/m/d - h:i:s", time()).'\')';
mysql_query($query) or die(mysql_error());
echo '<font color="#FF0000">El Usuario</font> <font color="#0000FF">'.$Username.'</font> <font color="#FF0000">ha sido registrado de manera satisfactoria.</font><br />';
echo '<font color="#FF0000">Ahora puedes entrar con tu cuenta al juego. Bienvenid@</font> <br />';
?>

Última edición por fe29; 29/12/2011 a las 00:54
  #7 (permalink)  
Antiguo 29/12/2011, 14:53
Avatar de ZoroRoronoa  
Fecha de Ingreso: marzo-2011
Ubicación: California, USA
Mensajes: 824
Antigüedad: 13 años
Puntos: 116
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Código PHP:
Ver original
  1. <?php
  2. // verificamos si se han enviado ya las variables necesarias.
  3. if (isset($_POST["Username"])) {
  4. //ahora sacamos los digitos que contiene el campo contrasena
  5. $contra = $_POST['contrasena'];
  6. $digitos = strlen($contra); //con esto te da el numero de digitos
  7. // ahora verificamos la contrasena
  8. if($digitos >=6) {
  9. //si tiene 6 o mas, que pase al siguiente paso
  10. //AQUI PONDRIAS TODO TU DEMAS CODE
  11. } else {
  12. //tiene menos de 6 digitos, le marcamos un error.
  13. echo "ERROR, contrasena con menos de 6 digitos";
  14. }
  15. }
  16. ?>

Saludos
__________________
Programador jQuery & PHP
  #8 (permalink)  
Antiguo 29/12/2011, 16:55
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Cita:
Iniciado por ZoroRoronoa Ver Mensaje
Código PHP:
Ver original
  1. <?php
  2. // verificamos si se han enviado ya las variables necesarias.
  3. if (isset($_POST["Username"])) {
  4. //ahora sacamos los digitos que contiene el campo contrasena
  5. $contra = $_POST['contrasena'];
  6. $digitos = strlen($contra); //con esto te da el numero de digitos
  7. // ahora verificamos la contrasena
  8. if($digitos >=6) {
  9. //si tiene 6 o mas, que pase al siguiente paso
  10. //AQUI PONDRIAS TODO TU DEMAS CODE
  11. } else {
  12. //tiene menos de 6 digitos, le marcamos un error.
  13. echo "ERROR, contrasena con menos de 6 digitos";
  14. }
  15. }
  16. ?>

Saludos


Gracias ahora mismo lo probare :D
  #9 (permalink)  
Antiguo 29/12/2011, 19:51
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Cita:
Iniciado por ZoroRoronoa Ver Mensaje
Código PHP:
Ver original
  1. <?php
  2. // verificamos si se han enviado ya las variables necesarias.
  3. if (isset($_POST["Username"])) {
  4. //ahora sacamos los digitos que contiene el campo contrasena
  5. $contra = $_POST['contrasena'];
  6. $digitos = strlen($contra); //con esto te da el numero de digitos
  7. // ahora verificamos la contrasena
  8. if($digitos >=6) {
  9. //si tiene 6 o mas, que pase al siguiente paso
  10. //AQUI PONDRIAS TODO TU DEMAS CODE
  11. } else {
  12. //tiene menos de 6 digitos, le marcamos un error.
  13. echo "ERROR, contrasena con menos de 6 digitos";
  14. }
  15. }
  16. ?>

Saludos

Amigo no me funciona no se si es por burro o por estúpido pero lo pongo de esta manera en mi web mira:

Código PHP:
[CODE]<?php
}
// verificamos si se han enviado ya las variables necesarias.
if (isset($_POST["Username"])) {
    
$Username $_POST["Username"];
    
$password $_POST["password"];
    
$password2 $_POST["password2"];
    
$email $_POST["email"];
    
$realname $_POST["realname"];
    
$Idnumber $_POST["Idnumber"];
    
$Question $_POST["Question"];
    
$answer $_POST["answer"];
    
$Country $_POST["Country"];
    
$City $_POST["City"];    
    
// Hay campos en blanco
    
if($Username==NULL|$password==NULL|$password2==NULL|$email==NULL|$realname==NULL|$Idnumber==NULL|$Question==NULL|$answer==NULL|$Country==NULL|$City==NULL) {
        echo 
"un campo está vacio.";
        
formRegistro();
    }else{                
    
//ahora sacamos los digitos que contiene el campo contrasena
        
$password $_POST['password'];
        
$password strlen($password); //con esto te da el numero de digitos
    // ahora verificamos la contraseña
        
if($password >=6) {
    
//si tiene 6 o mas, que pase al siguiente paso    
        
} else {
    
//tiene menos de 6 digitos, le marcamos un error.
        
echo "ERROR, contrasena con menos de 6 digitos";
        }
                  
        
// ¿Coinciden las contraseñas?
        
if($password!=$password2) {
            echo 
"Las contraseñas no coinciden";    
            
formRegistro();
        }else{        
            
// Comprobamos si el nombre de Usuario o la cuenta de correo ya existían
            
$checkuser mysql_query("SELECT Username FROM accounts WHERE Username='$Username'");
            
$Username_exist mysql_num_rows($checkuser);
            
$checkemail mysql_query("SELECT email FROM accounts WHERE email='$email'");
            
$email_exist mysql_num_rows($checkemail);
            if (
$email_exist>0|$Username_exist>0) {
                echo 
"El nombre de Usuario o la cuenta de correo estan ya en uso";
                
formRegistro();                
            }else{            
            
date_default_timezone_set('America/Mexico_City');//Averigua tu zona
            
$date date("Y/m/d - h:i:s"time());
            
                
$query 'INSERT INTO accounts (Username, password, email, realname, Idnumber, Question, answer, Country, City, fecha)
                VALUES (\''
.$Username.'\',\''.$password.'\',\''.$email.'\',\''.$realname.'\',\''
                
.$Idnumber.'\',\''.$Question.'\',\''.$answer.'\',\''.$Country.'\',\''.$City.'\',\''.date("Y/m/d - h:i:s"time()).'\')';                                                             
                
mysql_query($query) or die(mysql_error());
                echo 
'<font color="#FF0000">El Usuario</font> <font color="#0000FF">'.$Username.'</font> <font color="#FF0000">ha sido registrado de manera satisfactoria.</font><br />';
                echo 
'<font color="#FF0000">Ahora puedes entrar con tu cuenta al juego. Bienvenid@</font> <br />';
                
?>[/CODE]

cuando intento registrar una cuenta que tenga menos del mínimo me dice:

ERROR, contrasena con menos de 6 digitosLas contraseñas no coinciden

cuando la pongo bien con mas de 6 dígitos me dice:

Las contraseñas no coinciden

Ayuda me por favor y perdona la molestia y mi estupidez :(


Nota: mi web de registro es esta http://Prox-Co.sytes.net/register.php
por si quieres ver lo que dice al intentar registrar una cuenta.....
  #10 (permalink)  
Antiguo 29/12/2011, 20:02
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

varios detalles, si al principio ya asignaste las variables de $_POST porque volverlo a hacer??

aca
Cita:
Iniciado por fe29 Ver Mensaje
Código PHP:
else{                
    
//ahora sacamos los digitos que contiene el campo contrasena
        
$password $_POST['password'];
        
$password strlen($password); //con esto te da el numero de digitos 
asignas el numero de caracteres a $password por lo que al hacer la comparación con el otro password nunca te dará igual.

Revisa bien tu código y te iras dando cuenta de los detalles que tienes en este, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #11 (permalink)  
Antiguo 29/12/2011, 20:07
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Cita:
Iniciado por carlos_belisario Ver Mensaje
varios detalles, si al principio ya asignaste las variables de $_POST porque volverlo a hacer??

aca

asignas el numero de caracteres a $password por lo que al hacer la comparación con el otro password nunca te dará igual.

Revisa bien tu código y te iras dando cuenta de los detalles que tienes en este, saludos
ok muchas gracias amigo......

es que soy bien noob :D pero bueno chin a chin aprendo jeje
  #12 (permalink)  
Antiguo 29/12/2011, 21:27
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Cita:
Iniciado por carlos_belisario Ver Mensaje
varios detalles, si al principio ya asignaste las variables de $_POST porque volverlo a hacer??

aca

asignas el numero de caracteres a $password por lo que al hacer la comparación con el otro password nunca te dará igual.

Revisa bien tu código y te iras dando cuenta de los detalles que tienes en este, saludos
ahora lo puse de esta manera:

Código PHP:
// Comprobar cantidad de digitos    
    
$digitos strlen($password);
    
// ahora verificamos la contrasena
    
if($digitos >=6) {
    
//si tiene 6 o mas, que pase al siguiente paso    
        
} else {
    
//tiene menos de 6 digitos, le marcamos un error.
    
echo "ERROR, contrasena con menos de 6 digitos";
            }                
        
// ¿Coinciden las contraseñas?
        
if($password!=$password2) {
            echo 
"Las contraseñas no coinciden";
            
formRegistro();
        }else{ 
y lo que hace es que cuando intento registrar un usuario con meno de 6 dígitos de contraseña dice:

ERROR, contrasena con menos de 6 digitosEl Usuario fe29 ha sido registrado de manera satisfactoria.
Ahora puedes entrar con tu cuenta al juego. Bienvenid@

pero me registra el usuario............. Por favor digan me la manera correcta de como colocar el código...........
  #13 (permalink)  
Antiguo 29/12/2011, 22:08
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

bueno es obvio que si no cumple con la cantidad de digitos deberías de romperse el script y enviar un error al usuario no crees?? que haces cuando hay una validación que no es correcta??
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #14 (permalink)  
Antiguo 29/12/2011, 22:22
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Cita:
Iniciado por carlos_belisario Ver Mensaje
bueno es obvio que si no cumple con la cantidad de digitos deberías de romperse el script y enviar un error al usuario no crees?? que haces cuando hay una validación que no es correcta??
intentar reparar la no??

el único detalle es que no tengo ni la menor idea ya que si supiera la respuesta no hubiese creado este tema ni preguntado a nadie......

Razón: soy nuevo y me interesa aprender....
  #15 (permalink)  
Antiguo 29/12/2011, 22:30
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

bueno en realidad cuando hay una validación de datos que no se cumple sencillamente se le indica al usuario un error

Código PHP:
Ver original
  1. if($validacion == "la regla que quieras aplicar") {
  2.     /*haces lo que tengas que hacer ya que tu dato es valido*/
  3. } else {
  4.     /*haces lo que tu debes hacer cuando no validas por ejemplo mandar un alert al usuario o escribir un mensaje en el formulario*/
  5. }
como depende a como trabajes, por ejemplo yo utilizaba mucho las sessiones para mostrar los mensajes ya que yo tengo separado el html del form de la logica que se hace con los datos y hacia una redirección desde la logica hasta el form, pero ve como te conviene mas a ti, saludos
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #16 (permalink)  
Antiguo 29/12/2011, 22:36
 
Fecha de Ingreso: diciembre-2011
Ubicación: Santiago
Mensajes: 45
Antigüedad: 12 años, 3 meses
Puntos: 1
Respuesta: como puedo hacer que el mínimo de dígitos sea 6

Cita:
Iniciado por carlos_belisario Ver Mensaje
bueno en realidad cuando hay una validación de datos que no se cumple sencillamente se le indica al usuario un error

Código PHP:
Ver original
  1. if($validacion == "la regla que quieras aplicar") {
  2.     /*haces lo que tengas que hacer ya que tu dato es valido*/
  3. } else {
  4.     /*haces lo que tu debes hacer cuando no validas por ejemplo mandar un alert al usuario o escribir un mensaje en el formulario*/
  5. }
como depende a como trabajes, por ejemplo yo utilizaba mucho las sessiones para mostrar los mensajes ya que yo tengo separado el html del form de la logica que se hace con los datos y hacia una redirección desde la logica hasta el form, pero ve como te conviene mas a ti, saludos


ok muchas gracias por tus hmm consejos y por tu ayuda......

me pondré a leer algún manual....... :D

acabo de hallar este tema:

http://desphpparatodos.blogspot.com/2011/03/clase-validacion-de-datos.html

es tuyo me imagino..

lo voy a leer haber que aprendo
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 21:03.