Después del artículo medio en broma donde explico cómo desactivar la tecla mayúscula, traigo un filtro anti mayúsculas que soluciona uno de los problemas más frecuentes que generan los HOYGANS, y otras "criaturas" similares.

Anti Mayúsculas

La función filtro anti-mayúsculas está escrita en PHP mediante lenguajes regulares.


Filtro anti-mayúsculas en PHP


Recoge una cadena de texto, comprueba si hay demasiadas palabras en mayúscula, y si es así, escribe la primera letra después de cada punto en mayúscula y el resto en minúscula.

function anti_mayusculas ($texto) {
//Calculamos la cantidad de letras y mayusculas
$letras = strlen (preg_replace ('/[^a-zA-Z]+/', '', $texto));
$mayusculas = strlen (preg_replace ('/[^A-Z]+/', '', $texto));

//Si la cantidad de mayusculas es superior al 50%, se aplica el filtro
if ((($mayusculas * 100) / $letras) >= 50) {
$origen = array ('Á', 'Ä', 'É', 'Ë', 'Í', 'Ï', 'Ó', 'Ö', 'Ú', 'Ü', 'Ñ', 'á', 'ä', 'é', 'ë', 'í', 'ï', 'ó', 'ö', 'ú', 'ü', 'ñ');
$destino = array ("'A", ":A", "'E", ":E", "'I", ":I", "'O", ":O", "'U", ":U", "'N", "'a", ":a", "'e", ":e", "'i", ":i", "'o", ":o", "'u", ":u", "'n");

//Protegemos los caracteres con tildes o dieresis
$texto = str_replace ($origen, $destino, $texto);

//Nos aseguramos que tenga un punto al final
$texto = (preg_match ('/\.$/', $texto)) ? $texto : $texto.'.';
//Convertimos a mayuscula la primera letra despues de cada punto y el resto en minuscula
$texto = preg_replace ('/([a-zA-Z])([^\.]+)\./e', "strtoupper('\\1').strtolower('\\2').'.'", $texto);

//Restauramos los caracteres con tildes o dieresis
$texto = str_replace ($destino, $origen, $texto);
}

return $texto;
}

Ahora, en la página donde recibes las variables cuando se envía un comentario, (antes de que se almacene en la base de datos), debes aplicar el filtro anti-mayúsculas. Ejemplo:

$contenido = anti_mayusculas ($_POST ['comentario']);

Si te gustó el artículo...

Puedes seguir el blog a través de Twitter, Facebook o tu lector de feeds RSS.

Artículos Relacionados

0 Comentarios

Aún no hay escrito ningún comentario

Deja tu Comentario

Asigna una imagen a tu email con Gravatar, si no sabes accede al siguiente Tutorial.



Asigna una imagen a tu email
Nombre
Email [Requerido]
Web/Blog

Información

  • Aplicamos el tag nofollow, y los enlaces con keywords en los comentarios podrían ser eliminados, intentamos mantener limpio el blog de spam.

  • Puedes usar las etiquetas <i>, <b>, <em>, <strong>, <a>, href, procura cerrarlas adecuadamente o tu comentario podria no mostrarse del modo que deseas.

  • Si necesitas que se vean en el comentario caracteres especiales como los usados en lenguajes de programacion como php, xhtml, etc., debes escribirlo dentro de las etiquetas [code] [/code], de lo contrario no se mostrará.

  • Procura no escribir enlaces que no tengan ninguna relación con el tema.

  • Si realizas una crítica procura argumentarla, pero sobretodo evita los insultos.