Foros del Web » Programando para Internet » PHP »

Mínimo caracteres campo de texto

Estas en el tema de Mínimo caracteres campo de texto en el foro de PHP en Foros del Web. Hola a todos. Tengo sencillo foro en mi web, en el cuál, escribes tú nombre y tu comentario en unos campos de texto y al ...
  #1 (permalink)  
Antiguo 23/06/2008, 08:26
 
Fecha de Ingreso: enero-2008
Mensajes: 73
Antigüedad: 16 años, 3 meses
Puntos: 2
Mínimo caracteres campo de texto

Hola a todos. Tengo sencillo foro en mi web, en el cuál, escribes tú nombre y tu comentario en unos campos de texto y al darle a enviar, los escribe en un documente txt. El caso es que quería que en el campo de texto donde se escribe el nombre, tuvieses que escribir un mínimo de caracteres (3 en concreto), y sino, que no te lo deje enviar o te salga un mensaje de error. Tengo un máximo permitido, pero no logro poner un mínimo. Aver si alguien me puede ayudar.
Código:
<input type="text" name="nombre" id="nombre" maxlength="15">
GRacias de antemano.
  #2 (permalink)  
Antiguo 23/06/2008, 08:34
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mínimo caracteres campo de texto

el mínimo lo quieres controlar desde el servidor o del lado del cliente??

depende mucho de como quieras hacerlo....

en el server, puedes usar strlen() para comprobar la longitud de alguna variable... cadena
en el cliente, puedes averiguarlo con javascript, mas bien... su propiedad length de la cadena

Ejemplos...
Código PHP:
if (strlen($texto)<3)
{
  
// no tiene mas de 3 caracteres

Código:
if (el.value.length<3)
{
  // no tiene..... IDEM
}
suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 23/06/2008, 08:49
isra00
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Mínimo caracteres campo de texto

Efectivamente, como dice pateketrueke, la validación de formularios se puede hacer en el cliente o en el servidor. Te recomiendo que la hagas en ambas partes. En el cliente, para mayor velocidad (<input onBlur="comprobar(this">, por ejemplo), y en el servidor, porque quizá el cliente tenga JavaScript desactivado o haya hecho algún truquito para enviar el formulario sin validar...
  #4 (permalink)  
Antiguo 25/06/2008, 02:05
Avatar de susaninhax  
Fecha de Ingreso: noviembre-2004
Mensajes: 358
Antigüedad: 19 años, 5 meses
Puntos: 3
Respuesta: Mínimo caracteres campo de texto

Hola a todos,

no piloto mucho de javascript, pero necesito controlar un campo de texto , necesito ponerle un limite de caracteres, he intentado aplicar lo que decís, pero no se exactamente que poner en los huecos... alguien me puede decir como se pone ???

He probado limitar la caja de texto con el onBlur pero no se como ponerle la limitacion entre los parentesis, alguien me indicaría como?¿?¿?¿?¿

(<input onBlur="comprobar(this">, por ejemplo)...como se pone?

Muchas gracias de antemano a todos!!

Un saludo foreros!
  #5 (permalink)  
Antiguo 25/06/2008, 08:39
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mínimo caracteres campo de texto

mmm.... para empezar esta mal esa etiqueta, y si sabes HTML deberías saberlo...

.....como se pone???

has leído del atributo maxlength ???

si fueras mas acertada estudiando un poquito de HTML demás sabrías que no es necesario Javascript ni PHP, solo un atributo... no mas

Código HTML:
<input type="text" maxlength="3"/> 
ahora, si quieres algo mas complejo.... como limite alfanumérico, solo letras o solo números, etc.... te recomiendo investigues jQuery que tienes unos plugins geniales para que no te canses programando este comportamiento...

suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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 06:13.