elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Alguien conoce una funcion haci
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Alguien conoce una funcion haci  (Leído 3,413 veces)
mark182


Desconectado Desconectado

Mensajes: 395


Ver Perfil WWW
Alguien conoce una funcion haci
« en: 26 Julio 2009, 23:05 pm »

Hola que tal?

Recien empiezo con la programacion en PHP y la verdad que hay cosas que nose todavia, estoy haciendo un formulario y quiero controlar que el usuario no ingrese espacios en blancos o algunos caracteres, etc. Quiero que lo unico que pueden poner sean letras con numeros, o letras solas o numeros solos unicamente.
Si el usuario llega a poner algo no permitido, que lo rechaze y vuelva a la pagina de registracion pero con el resto de los datos correctos ya puestos, y un mensaje de error en donde se haya equivocado el usuario. Espero que no sea mucho molestia. Se los agradezco mucho.


En línea

Erik#


Desconectado Desconectado

Mensajes: 1.138


Gundam


Ver Perfil
Re: Alguien conoce una funcion haci
« Respuesta #1 en: 26 Julio 2009, 23:26 pm »

Para eso esta:

Código
  1. if(eregi('€', $_GET['frase'])){
  2. echo "No valido, contiene el caracter €";
  3. }else{
  4. // tu code
  5. }

Informate en php.net de la función EREGI.


« Última modificación: 26 Julio 2009, 23:55 pm por Erik# » En línea

Erik#


Desconectado Desconectado

Mensajes: 1.138


Gundam


Ver Perfil
Re: Alguien conoce una funcion haci
« Respuesta #2 en: 27 Julio 2009, 00:00 am »

Doble post: lo hago para que me leas esto:

Tambien puedes usar expresiones regulares :P

Código
  1. if(eregi(^[A-Za-z0-9]{1,}$,$_GET['palabra'])){
  2. echo "Correcto";
  3. }else{
  4. echo "Incorrecto";
  5. }

En el eregi solo permitimos de la A a la Z y del 0 al 9, minusculas y mayusculas y por lo menos debe tener 1 caracter la frase.
Donde $_GET[] introduce tu $_POST y el nombre. Y donde correcto e incorrecto lo que tu quieres hacer.
En línea

mark182


Desconectado Desconectado

Mensajes: 395


Ver Perfil WWW
Re: Alguien conoce una funcion haci
« Respuesta #3 en: 27 Julio 2009, 01:12 am »

Lo voy a probar...muchas gracias.
En línea

mark182


Desconectado Desconectado

Mensajes: 395


Ver Perfil WWW
Re: Alguien conoce una funcion haci
« Respuesta #4 en: 27 Julio 2009, 02:47 am »

Mira...lo eh provado pero funciona a medias. Lo explico con la contraseña me funciona, osea, si el usuario pone un espacio a algun caracter que no sea letra o numero tira el mensaje de error. Pero con el usuario no me funciona, ya sea que ponga de forma correcta o con simbolos no permitidos, me sigue tirando el mensaje de error. Les dejo todo el codigo completo para que vean donde puede estar el error.


$numero=strlen($usuario);

if ($numero < 4){
echo "El nombre de usuario $usuario no es válido.
Debe contener como mínimo 4 caracateres<br>";}

   
else { if (ereg("^[a-zA-Z0-9\-_]{4}$", $usuario)) {}
else {
   echo "El nombre de Usuario es incorrecto. Solo se permiten letras, números, - y _<br>";}}
 



$numero=strlen($pass);
$numero2=strlen($cpass);

if (($numero < 6) or ($numero2 < 6)){
echo "No ha ingresado la Contraseña correctamente. Debé contener
6 caracteres como mínimo y 8 como máximo<br>";}
      

else { if (ereg("^[a-zA-Z0-9]{6,8}$", $pass)) {}
else {
   echo "La Contraseña es incorrecta. Solo se permiten letras, números, - y _<br>";}} 


Que pueda estar pasando?  Gracias.
En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: Alguien conoce una funcion haci
« Respuesta #5 en: 27 Julio 2009, 03:34 am »

Tenés errores en los condicionales.. :rolleyes:

Código
  1. else { if (ereg("^[a-zA-Z0-9\-_]{4}$", $usuario)) {}

Esa linea, por ejemplo...

Debes anidar los If-Else o usar switch

Saludos
En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
Erik#


Desconectado Desconectado

Mensajes: 1.138


Gundam


Ver Perfil
Re: Alguien conoce una funcion haci
« Respuesta #6 en: 27 Julio 2009, 10:10 am »

Unsigned tiene razón, la sintax del else if es:

Código
  1. }elseif(...){
En línea

mark182


Desconectado Desconectado

Mensajes: 395


Ver Perfil WWW
Re: Alguien conoce una funcion haci
« Respuesta #7 en: 27 Julio 2009, 14:00 pm »

pero justo abajo esta el else de ese if, igual ustedes dicen de poner elseif? Disculpen es que estoy medio acostumbrado al lenguaje C jeje. Lo provare, gracias.
En línea

Erik#


Desconectado Desconectado

Mensajes: 1.138


Gundam


Ver Perfil
Re: Alguien conoce una funcion haci
« Respuesta #8 en: 27 Julio 2009, 14:17 pm »

pero justo abajo esta el else de ese if, igual ustedes dicen de poner elseif? Disculpen es que estoy medio acostumbrado al lenguaje C jeje. Lo provare, gracias.

El else if no se separa así: else } if ...
En línea

SnakeDrak

Desconectado Desconectado

Mensajes: 243


[GPG: 0x9680A09E]


Ver Perfil
Re: Alguien conoce una funcion haci
« Respuesta #9 en: 27 Julio 2009, 17:26 pm »

Hola,

Usa mejor preg_match, PCRE está mucho mejor.

Código
  1. if(!preg_match('/^[a-zA-Z!\?\d_\-]{4,23}$/',$_POST['user'])) // Comprobamos carácteres
  2. $error .= "* El usuario contiene caracteres no permitidos<br/>";
  3. else noerror;
  4.  

Ese es un ejemplo para comprobar caracteres ingleses del alfabeto inglés con ?, números, -, _ e ! incorporados que ha sido pasado por POST en user, es decir que si contiene algún caracter que no esté en ese alfabeto dará error, por ejemplo á.

Suerte!
« Última modificación: 27 Julio 2009, 17:38 pm por SnakeDrak » En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
El smartphone norcoreano al desnudo
Noticias
Mister12 6 2,434 Último mensaje 13 Agosto 2013, 22:06 pm
por #!drvy
Alguien conoce la función para generar RSA en C#; y por que maneja exponent AQAB
.NET (C#, VB.NET, ASP)
morpheus1000 0 1,513 Último mensaje 26 Julio 2016, 01:12 am
por morpheus1000
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines