Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Elton M. Távora

ASP dentro do JavaScript

Recommended Posts

Galera, sou novo nessa área e estou tentando fazer uma página para donwload de um arquivo, porém este arquivo só poderá ser baixado se o formulário contido nesta página estiver preenchido. O meu código está assim:

 

<html>
  <head>
	<title>Formulário para download</title>
	<script language="JavaScript">
	  function confere(){
		var nome1= document.formulario.nome.value
		var empresa1= document.formulario.empresa.value
		var email1= document.formulario.email.value
		  if(nome1=="" || empresa1=="" || email1==""){
			alert("Por favor, preencha todos os campos")
		  }
		  else{
			  location='teste.zip'
			  } 
		  }										
	</script>
  </head>
  <body>
	<form name="formulario" action="">
	  <p>
		Nome: <input type="text" name="nome" style="width: 348px">
	  </p>
	  <p>
		Empresa: <input type="text" name="empresa" style="width: 334px">
	  </p>
	  <p>
		Email: <input type="text" name="email" style="width: 353px">
	  </p>
	  <input type="button" value="Download" onclick="confere()" />
	</form>
  </body>
</html>

teste.zip é o arquivo que será baixado (por enquanto).

Preciso fazer com que quando o usuário consigar realizar o donwload um e-mail seja enviado automaticamente para mim contendo os dados que estão no formulário.

 

Alguém sabe como faço isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo, deste jeito você não está submetendo o formulario, apenas redirecionando a página.

 

coloque um ID na tag do formulário:

<form name="formulario" id="myForm" action="">

e no ELSE do Javascript, coloque assim:

if(nome1=="" || empresa1=="" || email1==""){
	alert("Por favor, preencha todos os campos")
}
else{
	document.getElementById('myForm').submit()
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Danilo, lembrando que o Elton também terá que usar uma linguagem serve side para tratar persistir os dados do formulário e redirecionar para o arquivo de download.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu galera. Fiz as mudanças no meu código.

 

O que eu preciso fazer agora é que um e-mail seja mandado para mim com os dados contidos no formulários assim que o download foi liberado.

Alguém sabe como faço isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aí é com o server-side. No teu caso o ASP.

Em php eu usaria a função mail(), mas vê lá no fórum de ASP.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O meu código depois da mudança ficou assim:

 

<html>

<head>

<title>Formulario para download</title>

<script language="JavaScript">

function confere(){

var nome1= document.formulario.nome.value

var empresa1= document.formulario.empresa.value

var email1= document.formulario.email.value

if(nome1=="" || empresa1=="" || email1==""){

alert("Por favor, preencha todos os campos")

}

else{

document.getElementById('myForm').submit()

location='teste.zip'

//AQUI O E-MAIL SERÁ ENVIADO.

}

}

</script>

</head>

<body>

<form name="formulario" id="myForm" action="">

<p>

Nome: <input type="text" name="nome" style="width: 348px">

</p>

<p>

Empresa: <input type="text" name="empresa" style="width: 334px">

</p>

<p>

Email: <input type="text" name="email" style="width: 353px">

</p>

<input type="button" value="Download" onclick="confere()" />

</form>

</body>

</html>

 

Tem como eu usar ASP dentro do JS?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ASP é processado ANTES do HTML, e do Javascript.

Oque você quer dizer com: "usar ASP dentro do JS?", qr fazer requisições assincronas? ai seria AJAX.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ASP é processado ANTES do HTML, e do Javascript.

Oque você quer dizer com: "usar ASP dentro do JS?", qr fazer requisições assincronas? ai seria AJAX.

 

Quero que na linha 15 do meu código, dentro do ELSE, onde diz:

 

//AQUI O E-MAIL SERÁ ENVIADO.

 

seja colocado alguma linha de comando que permita que os dados que foram preenchidos no formulário seja enviado diretamente para um e-mail de minha preferencia.

 

Alguém sabe como faço isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ASP é processado ANTES do HTML, e do Javascript.

Oque você quer dizer com: "usar ASP dentro do JS?", qr fazer requisições assincronas? ai seria AJAX.

 

Quero que na linha 15 do meu código, dentro do ELSE, onde diz:

 

//AQUI O E-MAIL SERÁ ENVIADO.

 

seja colocado alguma linha de comando que permita que os dados que foram preenchidos no formulário seja enviado diretamente para um e-mail de minha preferencia.

 

Alguém sabe como faço isso?

 

Elton, não é o javascript que vai enviar o email. ele deve ser enviado no lado do servidor. aquele código que eu te mandei submita o formulário. depois disso você precisa recuperar as informações via ASP. vê isso lá no forum de ASP. é simples.

Compartilhar este post


Link para o post
Compartilhar em outros sites

até da pra enviar e-mail com JS, só que você irá utilizar o software de e-mail do usuário (Thunderbird, Outlook, Outlook Express etc...). Tem problema?

Se não tiver você pode fazer tipo assim:

 

<script language="javascript">
<!--
function confere(){
	var nome1= document.formulario.nome.value
	var empresa1= document.formulario.empresa.value
	var email1= document.formulario.email.value
	if(nome1=="" || empresa1=="" || email1==""){
		alert("Por favor, preencha todos os campos")
	} else {
		//document.getElementById('myForm').submit()
		location='teste.zip';
		enviaEmail('seu@email.com.br',nome1,'Um assunto');
	}
} 

function enviaEmail(to, from, assunto) {
	var oForm = document.formulario;
	var quebraLinha = "%0D";
	var corpo = "Nova mensagem de "+from+quebraLinha;
			corpo += "Nome: "+oForm.nome.value+quebraLinha;
			corpo += "Empresa: "+oForm.empresa.value+quebraLinha;
			corpo += "Email: "+oForm.email.value+quebraLinha;
	var saida = "mailto:"+to+"?subject="+assunto+"&body="+corpo;
	
	window.open(saida);
}
//-->
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.