Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/04/2007, 17:39
Avatar de hgp147
hgp147
 
Fecha de Ingreso: diciembre-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 980
Antigüedad: 18 años
Puntos: 36
Re: ayuda formulario de descarga

Hola!
Podes hacer que los datos ingresados te lleguen a tu direccion de email (tambien te llegara la IP), para eso necesitas un archivo en php (el que esta abajo de todo). El formulario en caso de que algun campo este vacio no permitira bajarse el archivo (este lo hago mediante javascript, pero tambien lo puedes hacer con php,etc).
Luego de completar el formulario, aparecera una página que dira: "Haz clic aqui para descargar..."

Estos son los codigos:

Crea un formulario, con este código:

Código HTML:
<html>
<head>
<script>
function valida_envia(){
//valido el nombre
if (document.formulario.nombre.value.length==0){
		alert("Tiene que escribir su nombre")
		document.formulario.nombre.focus()
		return 0;
	}
//valido el lugar
if (document.formulario.lugar.value.length==0){
		alert("Tiene que escribir su lugar")
		document.formulario.lugar.focus()
		return 0;
	}
//valido la edad
if (document.formulario.edad.value.length==0){
		alert("Tiene que escribir su edad")
		document.formulario.edad.focus()
		return 0;
	}


//el formulario se envia
	alert("Ahora ya puedes descargar el archivo");
	document.formulario.submit();
	}
</script>
</head>
<body>

<form name="formulario" action="procesa.php" method="post">
<input type="text" name="nombre">
<input type="text" name="lugar">
<input type="text" name="edad">
<input type="submit" value="Bajar maqueta" onclick="valida_envia()">
</form> 
Luego crea un archivo que se llame procesa.php y ponele este código:

Código PHP:
<html>
<head>
<link rel="stylesheet" type="text/css" href="estilo.css" />
</head>
<body>

<?php

$destino 
"[email protected]";
$asunto "Formulario desde mi web\n";
$mensaje .= "Nombre: " $_POST["nombre"] . "\n";
$mensaje .= "Lugar: " $_POST["lugar"] . "\n";
$mensaje .= "Edad: " $_POST["edad"] . "\n";
$mensaje .= "IP pública: "$_SERVER[REMOTE_ADDR] . "\n";
$mensaje .= "IP privada: "$_SERVER[HTTP_X_FORWARDED_FOR] . "\n";

mail($destino$asunto$mensaje"From: [email protected]");
?>

<p>Haz clic <a href="archivo_a_descargar.xxx">aquí</a> para descargarte el archivo</p> 

</body>
</html>
Espero que te sirva

Última edición por hgp147; 22/04/2007 a las 17:45