Foros del Web » Programando para Internet » PHP »

validación formulario

Estas en el tema de validación formulario en el foro de PHP en Foros del Web. Hola, tengo un pequeño dilema con un formulario en php y no tengo mucha idea de este lenguaje. Tengo un pequeño formulario con 5 campos ...
  #1 (permalink)  
Antiguo 09/03/2010, 03:54
 
Fecha de Ingreso: mayo-2006
Mensajes: 22
Antigüedad: 18 años, 6 meses
Puntos: 0
validación formulario

Hola,
tengo un pequeño dilema con un formulario en php y no tengo mucha idea de este lenguaje. Tengo un pequeño formulario con 5 campos y un botón que envia los datos a una dirección de correo enviando un mensaje de "Gracias los datos se han enviado". Lo que necesito es validarlo: si el usuario no rellena alguno de los campos el formulario no se envía y mande un mensaje "Faltan campos por rellenar, por favor rellene todos los campos" o algo por el estilo. Lo ideal seria que el telefono solo dejase número y que en el correo te obligue a poner @ pero si eso es pedir mucho tampoco es necesario.

Muchas gracias por anticipado, aqui os dejo mi código:

<?
if (!$_POST){
?>


<form action="index2.php" method=post name="index2.php" id="index2.php">
<fieldset>
<label for="firstname" accesskey="n">Nombre de la empresa: </label>
<input type="text" id="firstname" name="firstname" value="" title="Nombre de la empresa" /><br />
<label for="contactname" accesskey="c">Nombre del contacto: </label>
<input type="text" id="contactname" name="contactname" value="" title="Nombre del contacto" /><br />
<label for="telefono" accesskey="t">Teléfono: </label>
<input type="text" id="telefono" name="telefono" title="Teléfono de contacto" /><br />
<label for="email" accesskey="e">Email: </label>
<input type="text" id="email" name="email" title="email" /><br />
<label for="empleado" accesskey="n">Nº de empleados: </label>
<input type="text" id="empleado" name="empleado" title="Número de empleados" /><br />
<input type="submit" value="Enviar" id="submit" />
</fieldset>
</form>

<?

}else{

//Estoy recibiendo el formulario, compongo el cuerpo

$cuerpo = "Formulario enviado desde Página web". "\n";

$cuerpo .= "Nombre de la empresa: " . $_POST["firstname"] . "\n";

$cuerpo .= "Nombre del contacto: " . $_POST["contactname"] . "\n";

$cuerpo .= "Teléfono: " . $_POST["telefono"] . "\n";

$cuerpo .= "Email: " . $_POST["email"] . "\n";

$cuerpo .= "Número de empleados: " . $_POST["empleado"] . "\n";




//mando el correo...

mail("[email protected]","Formulario recibido",$cuerpo);



//doy las gracias por el envío

echo "Gracias por rellenar el formulario. Se ha enviado correctamente.";

}

?>
  #2 (permalink)  
Antiguo 09/03/2010, 05:20
 
Fecha de Ingreso: marzo-2009
Mensajes: 509
Antigüedad: 15 años, 8 meses
Puntos: 17
Respuesta: validación formulario

Hola, lo puedes hacer con javascript, cambiando:

Código PHP:
<form action="index2.php" method=post name="index2.php" id="index2.php"
Por:
Código PHP:
<form action="index2.php" method=post name="index2"  onSubmit" return comprueba()" id="index2.php"
Y luego ya con javascript ya compruebas si los campos están vacíos.

Espero que te sirva.

Saludos
  #3 (permalink)  
Antiguo 10/03/2010, 10:18
 
Fecha de Ingreso: mayo-2006
Mensajes: 22
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: validación formulario

Muchas gracias tio!!! me hubiera gustado más hacer la validación con el php por los usuarios que tengan inhabilitado el javascript pero de momento esto me sirve para salir del paso.
  #4 (permalink)  
Antiguo 10/03/2010, 10:25
Avatar de eulloa  
Fecha de Ingreso: octubre-2007
Ubicación: Donde caiga la noche, si mi hijo me deja
Mensajes: 691
Antigüedad: 17 años, 1 mes
Puntos: 5
Respuesta: validación formulario

Pues de todas formas es bueno validarlo desde PHP, q en definitiva es quien maneja los datos. Javascript se maneja en el cliente y es relativamente fácil alterar los datos.
¿Validar en PHP?
Demasiadas formas. Por ejemplo para validar un email o cadenas se hace generalmente con expresiones regulares. Para validar números puedes forzar un casting o usar funciones tipo is_int. Para validar otras cosas como tags o etiquetas hay funciones como strip_tags, htmlespecialchars que te ayudan bastante.
Todo depende de lo q quieras hacer. Mejor lo intentas y si tienes problemas o dudas pues posteas el code y le damos jejejeje

Etiquetas: formulario, validar
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 14:08.