Foros del Web » Programando para Internet » PHP »

seguridad formulario

Estas en el tema de seguridad formulario en el foro de PHP en Foros del Web. hola, me gustaria agregarle seguridad a mi formulario (se lo basico en programacion pero logro leerlo bastante bien), la idea es que los campos sean ...
  #1 (permalink)  
Antiguo 16/05/2009, 00:03
 
Fecha de Ingreso: septiembre-2007
Mensajes: 9
Antigüedad: 12 años, 6 meses
Puntos: 0
seguridad formulario

hola, me gustaria agregarle seguridad a mi formulario (se lo basico en programacion pero logro leerlo bastante bien), la idea es que los campos sean todos requeridos y que por ejemplo en el campo email si no pone el arroba salte error o cosas asi.

Código:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Nombre</title>
</head>




<body>
	
<? 
if (!$HTTP_POST_VARS){ 
?> 
<form action="formulario.php" method=post>

<table border="0" width="100%" id="table1">
		<tr>
			<td width="74"><font face="Tahoma" color="#800000">Nombre:</font></td>
			<td>
			&nbsp;<input type="text" name="Nombre" size="20"></td>
		</tr>
		<tr>
			<td width="74"><font face="Tahoma" color="#800000">Apellido:</font></td>
			<td>
			&nbsp;<input type="text" name="Apellido" size="20"></td>
		</tr>
		<tr>
			<td width="74"><font face="Tahoma" color="#800000">e-Mail:</font></td>
			<td>
			<input type="text" name="Mail" size="29"></td>
		</tr>
		<tr>
			<td width="74"><font face="Tahoma" color="#800000">Edad:</font></td>
			<td>
			&nbsp;<input type="text" name="Edad" size="3"></td>
		</tr>
		<tr>
			<td width="74">&nbsp;</td>
			<td>&nbsp;</td>
		</tr>
		<tr>
			<td width="74"><font face="Tahoma" color="#800000">Colegio:</font></td>
			<td>&nbsp;</td>
		</tr>
		<tr>
			<td width="74"><font face="Tahoma" color="#800000">Grado:</font></td>
			<td>&nbsp;</td>
		</tr>
		<tr>
			<td width="74"><font face="Tahoma" color="#800000">País:</font></td>
			<td><select size="1" name="Pais">
			<option>Argentina</option>
			<option>Bolivia</option>
			<option>Chile</option>
			<option>Uruguay</option>
			</select></td>
		</tr>
	</table>
	<table cellpadding="0" cellspacing="0" width="908" height="19">
	
		<tr>
			<td width="908" height="19"></td>
		</tr>
	</table>
	<table cellpadding="0" cellspacing="0" width="907">
	
		<tr>
			<td height="25" valign="top"><font face="Tahoma" color="#800000">¿En 
			qué área o áreas de la investigación te interesa participar?</font></td>
		</tr>
	</table>
	<div align="left">
		<table cellpadding="0" cellspacing="0" width="907" height="19" align="left">
		
			<tr>
				<td height="19" width="114" rowspan="2">&nbsp;</td>
				<td height="19" width="793" rowspan="2" valign="top">
				<font face="Tahoma">
				<input type="checkbox" name="Encuesta1" value="ON"> Recabar 
				datos<br>
				<input type="checkbox" name="Encuesta2" value="ON"> 
				Experimentación<br>
				<input type="checkbox" name="Encuesta3" value="ON"> Elaboración 
				de conclusiones<br>
				<input type="checkbox" name="Encuesta4" value="ON"> Estadísticas 
				de resultado</font></td>
			</tr>
		</table>
		<p>&nbsp;</div>
	<p>&nbsp;</p>
	<table cellpadding="0" cellspacing="0" width="907">

		<tr>
			<td height="25"><font face="Tahoma" color="#800000">Cuéntanos sobre 
			que te gustaría investigar</font></td>
		</tr>
	</table>
	<table cellpadding="0" cellspacing="0" width="907">

		<tr>
			<td height="30">
			<textarea rows="10" name="Comentario" cols="45">Ingrese su comentario aquí</textarea></td>
		</tr>
	</table>
	<p><input type="submit" value="Enviar" name="B1"><input type="reset" value="Restablecer" name="B2"></p>
	
	</form> 
<? 
}else{ 
	$cuerpo = "Formulario enviado\n"; 
	$cuerpo .= "Nombre: " . $HTTP_POST_VARS["Nombre"] . "\n"; 
	$cuerpo .= "Apellido: " . $HTTP_POST_VARS["Apellido"] . "\n";
	$cuerpo .= "Email: " . $HTTP_POST_VARS["Mail"] . "\n";
	$cuerpo .= "Edad: " . $HTTP_POST_VARS["Edad"] . "\n";
	$cuerpo .= "Pais: " . $HTTP_POST_VARS["Pais"] . "\n";
	$cuerpo .= "Encuesta: " . $HTTP_POST_VARS["Encuesta1"] . "\n";
	$cuerpo .= "Encuesta: " . $HTTP_POST_VARS["Encuesta2"] . "\n";
	$cuerpo .= "Encuesta: " . $HTTP_POST_VARS["Encuesta3"] . "\n";
	$cuerpo .= "Encuesta: " . $HTTP_POST_VARS["Encuesta4"] . "\n";
	$cuerpo .= "Comentario: " . $HTTP_POST_VARS["Comentario"] . "\n";
	
    //mando el correo... 
        mail("MIMAIL","Formulario recibido",$cuerpo); 

    //doy las gracias por el envío 
    
?> 
<script language="JavaScript" type="text/JavaScript"> 
          window.location = 'CONFIRMACION.htm'; 
</script><? 


} 
?> 


</body>


</html>
ese es el codigo de mi formulario
  #2 (permalink)  
Antiguo 16/05/2009, 01:23
Avatar de nicolyto77  
Fecha de Ingreso: marzo-2007
Ubicación: Buenos Aires
Mensajes: 782
Antigüedad: 13 años
Puntos: 12
Respuesta: seguridad formulario

Holas

Con lo del '@' para los emails, es mejor algo en JavaScript, es decir una doble verificacion

Y para luego del JavaScript, probar si existen los campos enviados con ISSET, que no esten vacios con EMPTY y/o jugar con los valores para saber si hay texto dentro o no, por ejemplo:

Código PHP:
<?php
if($_POST['campo'] != '') { // Hay algo dentro parece }
?>
Ejemplos de los anteriores:

Código PHP:
<?php
if(isset($_POST['campo'])) {
}

if(!empty(
$_POST['campo'])) {
}
Se muy poco de PHP, pero creo que esto esta bien y te ayudaria... Igualmente espera respuestas de los que mas saben, y asi aprendemos todos

Saludos
__________________
CabaSoft Networks
  #3 (permalink)  
Antiguo 16/05/2009, 11:47
 
Fecha de Ingreso: septiembre-2007
Mensajes: 9
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: seguridad formulario

disculpa mi ignorancia, pero en que parte de mi codigo deberia poner esos if?
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 00:57.