validacion de formularios
hola, estoy en plataforma linux redhat y php necesito validar un formulario por ejemplo el campo nombre, que solo me acepte letras,
le doy esta cadena a verificar .
$cadena="abcdefghijklmnñopqrstuvwxyz";
y la ñ no me la reconoce me la interpreta con este simbolo ñ , inserto este simbolo en cadena y lo camparo y no me lo interpreta, hice lo mismo en javascript y paso lo mismo, si tu sabes de otra manera me puedes ayudar, gracias.
le doy esta cadena a verificar .
$cadena="abcdefghijklmnñopqrstuvwxyz";
y la ñ no me la reconoce me la interpreta con este simbolo ñ , inserto este simbolo en cadena y lo camparo y no me lo interpreta, hice lo mismo en javascript y paso lo mismo, si tu sabes de otra manera me puedes ayudar, gracias.
Eso se debe a la configuracion regional. Ten en cuanta que la ñ pertenece al ascii extendido y no sigue ordenacion consecutiva tal y como lo hacen las letras del alfabeto ingles. Coge la tabla del codigo ascci y observalo:
<table border="1" cellspacing="0" cellpadding="3" align="center" class="Tabla">
<?
$i=0;
while ($i<255) {
$i++;
echo "<tr bgcolor=><td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td></tr>";
$i++;
}
?>
</table>
Un saludo
<table border="1" cellspacing="0" cellpadding="3" align="center" class="Tabla">
<?
$i=0;
while ($i<255) {
$i++;
echo "<tr bgcolor=><td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td>";
$i++;
echo "<td class='CabeceraTabla'>Nº $i</td><td class='CeldaTabla' nowrap>&#$i;</td></tr>";
$i++;
}
?>
</table>
Un saludo
Buenas. estoy tratando de hacer lo mismo, ingresar solo letras, tengo la misma cadena incluso con mayusculas, pero no me resulta el programa mi duda es ¿Hay que crear un programa aparte de validación? ¿tengo q insertar el codigo validacion con javascript, dentro del programa ingresar?, como lo haces, si puedes ayudarme te lo agradeceria.
si hay que hacer funciones aparte, te las voy a dar pero quedaria pendiente el problema de la ñ.
esto es en javaScript
function validarcadena(s)
{
var checkOK = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ" + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
var checkStr = s;
var allValid = true;
for (i = 0; i < checkStr.length; i++) {
var ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length) {
allValid = false;
break;
}
}
if (!allValid) {
alert("Escriba sólo letras en el campo "Nombre".");
formulario.nombre.focus();
return (false);
}
Despues haces el llamado de la funcion con la cadena que estas ingresando ej:
validarcadena(nombre);
esto es en javaScript
function validarcadena(s)
{
var checkOK = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ" + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
var checkStr = s;
var allValid = true;
for (i = 0; i < checkStr.length; i++) {
var ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length) {
allValid = false;
break;
}
}
if (!allValid) {
alert("Escriba sólo letras en el campo "Nombre".");
formulario.nombre.focus();
return (false);
}
Despues haces el llamado de la funcion con la cadena que estas ingresando ej:
validarcadena(nombre);
