El problema es, que tengo el codigo en java para consistenciar el ingreso delcasillero nombre que no sea mas de dos vocales o mas de dos consonantes pero no se como puedo ubicarlo sin afectar el arrancar.php la idea es que el usuario no se pueda registrar al colocar nombre sin sentido como por ejemplo "aaaa jasahsjaaaa" lo he colocado pero aun asi se registra y la idea seria q vuelva a llenar el nombre.... agradeceria su ayuda gracias
aqui les dejo el codigo para consistenciar el casillero de nombre:
aqui les dejo el codigo para consistenciar el casillero de nombre:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Coherencia</title>
<style>
input{
font:normal 10px/10px verdana;
color:navy;
border:solid 1px black;
width:300px;
}
form{ font:bold 10px/10px verdana;
color:black}
</style>
<script>
//------EDITABLE-----------
var palabraMasCorta=2;
var maximoDeVocales=2;
var maximoDeConsonantes=2;
var nombreDelCampo="pepe";
//---------------------------
var palabra=new Array();
var maximoconsonante=new Array();
var maximovocal=new Array();
var laFrase="";
var vocales="AEIOUÁÉÍÓÚ";
var consonantes="BCDFGHJKLMNÑPQRSTVWXYZ";
var mal=0;
var malmal=0;
var espacio=0;
var campo
function comprobarCoherencia(unCampo){
if(unCampo){nombreDelCampo=unCampo;}
mal=0;
malmal=0;
espacio=0;
//localizar el campo que es
for (a=0;a<document.forms[0].elements.length;a++){
if(document.forms[0].elements[a].name==nombreDelCampo){
campo=document.forms[0].elements[a];
break;
}
}
if(a==document.forms[0].elements.length){
alert("No existe campo llamado "+nombreDelCampo+"\nCompruebe que coinciden mayusculas y minúsculas");
return false}
frase=campo.value;
frase=frase.toUpperCase();
for (a=0;a<frase.length;a++){
letra=frase.charAt(a);
if(letra==" "){espacio+=1
if(espacio<2){
laFrase+=letra;
}}
else{
if(isNaN(letra) && letra.toUpperCase()!=letra.toLowerCase()){
espacio=0;
laFrase+=(laFrase.charAt(laFrase.length-1)==" " ||a==0)?letra:letra.toLowerCase();
}
}
}
// Quitar los espacios de más
if(laFrase.substring(laFrase.length-1)==" "){
laFrase=laFrase.substring(0,laFrase.length-1);
}
if(laFrase.charAt(0)==" "){
laFrase=laFrase.substring(1,laFrase.length);
}
//sustituir lo introducido por el resultado de quitar los espacios de más
// y los caracteres extraños
campo.value=laFrase;
if(laFrase==""){return false;}
//Separar por palabras la frase
frase=laFrase;
laFrase="";
palabra=frase.split(" ");
//Comprobar la coherencia y que no haya
//más consonantes y vocales juntas del
//máximo permitido
for (b=0;b<palabra.length;b++){
maximoconsonante[b]=0;
maximovocal[b]=0;
control=0;
consonante=0;
vocal=0;
for(a=0;a<palabra[b].length;a++){
letra=palabra[b].charAt(a).toUpperCase();
if (vocales.indexOf(letra)>-1){
consonante=0
vocal+=1
if(vocal>maximovocal[b]){
maximovocal[b]=vocal;
}
}
if(consonantes.indexOf(letra)>-1){
vocal=0
consonante+=1
if(consonante>maximoconsonante[b]){
maximoconsonante[b]=consonante;
}
}
}
}
// Marcar los errores
for (a=0;a<palabra.length;a++){
b=a+1;
Mensaje="Palabra número " + b + ": "+palabra[a];
if (maximoconsonante[a]>maximoDeConsonantes){
Mensaje+="\nTiene mas de "+maximoDeConsonantes+" consonantes juntas";
mal=1;malmal=1
}
if(maximovocal[a]>maximoDeVocales){
Mensaje+="\nTiene mas de "+ maximoDeVocales+ " vocales juntas";
mal=1;malmal=1
}
if(palabra[a].length<=palabraMasCorta){
Mensaje+="\nEs demasiado corta";
mal=1;malmal=1
}
if(mal==1){alert(Mensaje);}
mal=0;
}
if(malmal==0){document.forms[0].submit()}
}
</script>
</head>
<body>
<form action='javascript:alert("Enviado!")' >
Nombre: <input name="juan" onfocus="this.value=''" type="text"><br><br>
<input
type="button"
Value="Comprobar consistencia"
onclick="comprobarCoherencia('juan')">
</form>
</body>
</html>5
Puntos
Puntos
1437
Visitas
Visitas
1
Resp
Resp
Por carlos123 hace 10 años
Novice
Respuesta #1
buenas, te eh preparado un ejemplo sencillo de como validar por cantidad de vocales en una cadena, de aquí puedes sacar una idea para hacer lo que buscas https://phpres.net/js-jquery/validar-cadena-por-numero-de-vocales-con-javascript
0
Puntos
Puntos
Por alber hace 10 años
Admin