¿Cómo puedo poner restricciones a los campos de un formulario con php?

¿Cómo hago para que un campo me acepte solo números y no pueda ingresar números...? Pero los demás que ingresen caracteres en un solo formulario...
¿Ademas cómo puedo hacer para que no registre dos veces un mismo código?...

1 respuesta

Respuesta
1
No entiendo muy bien tu pregunta. ¿Quieres qué un campo solo admita números y el resto caracteres? Para esto tienes que usar JavaScript. Usa el siguiente código:
<html><head>
<script language="JavaScript">
var nums = "0123456789";
function SoloNum() {
nume = document.getElementById("n");
cadena = nume.value;
numCars = cadena.length;
ultimo = cadena.charAt(numCars-1);
if (nums.indexOf(ultimo) < 0) {
nume.value = cadena.substr(0,numCars-1);
}
}
</script>
</head>
<body>
<form name='fo'>
<input id ='n' type='text' onkeyup='SoloNum();'>
</form>
</body>
</html>
Para que solo admita caracteres modifica la variable nums con los caracteres permitidos.
Para hacer que no se registre dos veces el mismo código tienes que usar php y una base de datos. Una vez que se envía el formulario, recibes los datos en un script php, buscas el código en la base de datos y si existe regresas a la página del formulario indicando al usuario que ha escrito un código que ya existe.
Comentame si esto es lo que estas buscando, o aclarame un poco lo que quieres hacer, y de donde obtienes ese código.
Gracias por lo del script para insertar solo números y otros caracteres...
Pero con respecto al php... la idea ya la tengo y es la que me has dado lo que quisiera saber es que código le pongo...
Osea "que escribo" en el código, para que no me permita ingresar otra vez con el mismo ID...
Porque cuando yo lo hago acepta el mismo ID y le cambio el nombre, el mail, etc... y me acepta... lo que hace es reemplazar por el antiguo registro...
Más o menos un código de verificación si me podrías facilitar...
Gracias bubebu...
En la base de datos tienes que poner el ID que no admita caracteres nulos (clausula NOT NULL) y que no admita dos valores iguales (clausula UNIQUE). Al crear la base de datos te permitirá establecer esas opciones.
La verificación es muy sencilla. Te pongo el código:
$idDB = mysql_connect('localhost', '', '');
mysql_select_db("BaseDatos", $idDB);
$consulta = "SELECT ID FROM Tabla WHERE ID='$nuevoID'";
$resultado = mysql_query($consulta, $idDB);
$num = mysql_num_rows($resultado);
if ($num == 0) {
echo "Correcto. Insertar los datos.";
} else {
echo "El ID está repetido.";
}
Lo primero es obtener el ID. Lo puedes obtener generándolo de alguna forma o desde un formulario. Yo he usado la variable $nuevoID, sustitúyela por la variable que contenga tu ID. Solo tienes que conectar con la base de datos, buscar ese ID y si está en la base de datos ya sabes que está repetido y tienes que generar otro, pero si el resultado de la consulta es cero significa que no existe y que puedes insertar los datos sin problemas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas