Ir para conteúdo

POWERED BY:

Arquivado

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

xarlington

Formulario XHTM+Arquivo PHP

Recommended Posts

Salve galera, estou criando um formulario em XHTML e tal, no campo action coloco form.php para chamar o arquivo php, ate ai beleza, so que ainda nao testei pq nao coloquei o site no ar, gostari de saber se é esse mesmo o arquivo para o form xhtml chama o arquivo form.php?... so mudo o campo de email informando para qual email dev ser enviado as informções.

 

 

Script form.php

******************************************************************

<?php
$date = date("d/m/Y h:i");

// ****** ATENÇÃO ********
// ABAIXO ESTÁ A CONFIGURAÇÃO DO SEU FORMULÁRIO.
// ****** ATENÇÃO ********

//CABEÇALHO - CONFIGURAÇÕES SOBRE SEUS DADOS E SEU WEBSITE
$nome_do_site="Seu Site";
$email_para_onde_vai_a_mensagem = "seunome@seuemail.com.br";
$nome_de_quem_recebe_a_mensagem = "Seu Nome";
$exibir_apos_enviar='enviado.html';

//MAIS - CONFIGURAÇOES DA MENSAGEM ORIGINAL
$cabecalho_da_mensagem_original="From: $name <$email>\n";
$assunto_da_mensagem_original="Contato no Site";

// FORMA COMO RECEBERÁ O E-MAIL (FORMULÁRIO)
// ******** OBS: SE FOR ADICIONAR NOVOS CAMPOS, ADICIONE OS CAMPOS NA VARIÁVEL ABAIXO *************
$configuracao_da_mensagem_original="

ENVIADO POR:\n
Nome: $nome\n
Email: $email\n
Telefone: $telefone\n
Cidade: $cidade\n
Mensagem: $textodamensagem\n

ENVIADO EM: $date

";

//CONFIGURAÇÕES DA MENSAGEM DE RESPOSTA
// CASO $assunto_digitado_pelo_usuario="s" ESSA VARIAVEL RECEBERA AUTOMATICAMENTE A CONFIGURACAO
// "Re: $assunto"
$assunto_da_mensagem_de_resposta = "Confirmação";
$cabecalho_da_mensagem_de_resposta = "From: $nome_do_site <$email_para_onde_vai_a_mensagem>\n";
$configuracao_da_mensagem_de_resposta="Obrigado por entrar em contato!\nEstaremos respondendo em breve...\nAtenciosamente,\n$nome_do_site\n\nEnviado em: $date";

// ****** IMPORTANTE ********
// A PARTIR DE AGORA RECOMENDA-SE QUE NÃO ALTERE O SCRIPT PARA QUE O SISTEMA FINCIONE CORRETAMENTE
// ****** IMPORTANTE ********

//ESSA VARIAVEL DEFINE SE É O USUARIO QUEM DIGITA O ASSUNTO OU SE DEVE ASSUMIR O ASSUNTO DEFINIDO
//POR VOCÊ CASO O USUARIO DEFINA O ASSUNTO PONHA "s" NO LUGAR DE "n" E CRIE O CAMPO DE NOME
//'assunto' NO FORMULARIO DE ENVIO
$assunto_digitado_pelo_usuario="s";

//ENVIO DA MENSAGEM ORIGINAL
$headers = "$cabecalho_da_mensagem_original";
if ($assunto_digitado_pelo_usuario=="n")
{
$assunto = "$assunto_da_mensagem_original";
};
$seuemail = "$email_para_onde_vai_a_mensagem";
$mensagem = "$configuracao_da_mensagem_original";
mail($seuemail,$assunto,$mensagem,$headers);

//ENVIO DE MENSAGEM DE RESPOSTA AUTOMATICA
$headers = "$cabecalho_da_mensagem_de_resposta";
if ($assunto_digitado_pelo_usuario=="n")
{
$assunto = "$assunto_da_mensagem_de_resposta";
}
else
{
$assunto = "Re: $assunto";
};
$mensagem = "$configuracao_da_mensagem_de_resposta";
mail($email,$assunto,$mensagem,$headers);

echo "<script>window.location='$exibir_apos_enviar'</script>";

?>

 

 

É esse mesmo o arquivo que tenho que usar para poder ser chamado pelo form xhtml?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teoricamente sim, mas...

 

Pelo que eu estou vendo, ele não está recebendo nenhum valor através da array global $_POST.

 

dessa forma o e-mail enviado seria sempre o mesmo, independente do que o usuário digitar.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teoricamente sim, mas...

 

Pelo que eu estou vendo, ele não está recebendo nenhum valor através da array global $_POST.

 

dessa forma o e-mail enviado seria sempre o mesmo, independente do que o usuário digitar.

 

Abraços.

hehehe... entaum não sei se você entedeu direito, esse script é o form.php e o que vai chamar ele é o que esta no xhtml, tipo ali no campo email eu deveria colocar so o email no qual é para receber as informações, que no caso é o meu? seria isso?... no caso tem alguma coisa faltando nesse script que é array global para poder funcionar perfeitamente?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, eu entendi perfeitamente

 

Então, a página form.html chama a pagina form.php que por sua vez recebe os dados enviados pela form.html.

 

O problema é que a pagina form.php nao esta recebendo nenhum dado da form.html entende?

 

Vou exemplificar mais ou menos como teoricamente deveria funcionar.

 

form.html

<form action="form.php" method="post">

	<fieldset>
	
		<label for="nome">Nome: </label>
		<input type="text" name="nome" />
		
		<label for="sobrenome">Sobrenome: </label>
		<input type="text" name="sobrenome" />
		
		<button type="submit">Enviar</button>
	
	</fieldset>

</form>

form.php

<?php
/**
   *  Recebo os dados através da array global $_POST 
   */
$nome = $_POST['nome'];
$sobrenome = $_POST['sobrenome'];

/* os dados que estão entre aspas são os mesmo que estão no input name. */

echo "Olá, seu nome é $nome $sobrenome!";
?>
Da mesma forma teria que acontecer com o seu formulario, provavelmente no xhtml você tem os campos para digitar a mensagem, assunto e etc..

 

Esses dados teriam que ser passados para o form.php atraves dessa variável entendeu?

 

Acho que nesse caso no seu form.php, logo ali no começo você poderia alterar assim:

 

Ao invés de:

<?php
$date = date("d/m/Y h:i");

// ****** ATENÇÃO ********

você teria que alterar para:

<?php
$date = date("d/m/Y h:i");

$nome = $_POST['nome'];
$email = $_POST['email'];
$telefone = $_POST['telefone'];
$cidade = $_POST['cidade'];
$textodamensagem = $_POST['textodamensagem'];

// ****** ATENÇÃO ********

Lembrando que no seu xhtml você deverá ter os mesmos nomes que estão entre aspas na $_POST[''].

 

Qualquer coisa estamos ai =)

Compartilhar este post


Link para o post
Compartilhar em outros sites

heehhehe... ainda nao entendir muito não... peguei esse form.php do curo do Mxmasters que obtive e tava querendo lancar ele para o xhtml chamalo e enviar as informações por email, entao esse form.php nao serve?, teria outro aqui no site que funcione perfeitamente?...

 

Valeu

 

Tipo aqui ta um previa demonstração de um formulario em XHTML que eu gostaria que chamasse o form.php:

 

 

<form action="form.php" method="post" name="frmcadastro">
<fieldset>
<legend>Dados Pessoais</legend>
<label>Nome: <span>* Somente o primeiro nome</span><input type="text" /></label>
<label>Sobrenome: <input type="text" /></label>
<label class="ginput">Email: <input type="text" class="ginput"/></label>
<label>RG: <input type="text" /></label>
<label>CPF: <input type="text" /></label>
<label>Sexo:
<select name="sexo">
<option value=""></option>
<option value="Masculino">Masculino</option>
<option value="Feminino">Feminino</option>
</select>
</label>
<label>Estado Civil:
<select name="estado civil">
<option value=""></option>
<option value="s">Solteiro</option>
<option value="c">Casado</option>
<option value="d">Divorciado</option>
<option value="v">Viúvo</option>
</select>
</label>
</fieldset>

<fieldset>
<legend>Dados de Correspondência</legend>
<label class="ginput">Rua: <span>* Ex: Av, Rua</span><input type="text" class="ginput"/></label>
<label class="pinput">Número: <input type="text" class="pinput"/></label>
<label>Bairro: <input type="text" /></label>
<label>Complemento: <span>* Ex: Casa, Apartamento</span><input type="text" /></label>
<label class="minput">CEP: <input type="text" class="minput"/></label>
<label>Cidade: <input type="text" /></label>
<label>Estado:
<select name="Estado">
<option value=""></option>
<option value="AM">Amazonas</option>
<option value="PA">Pará</option>
<option value="MG">Minas Gerais</option>
<option value="SP">São Paulo</option>
<option value="RJ">Rio de Janeiro</option>
<option value="ES">Espirito Santo</option>
<option value="BA">Bahia</option>
<option value="MT">Mato Grosso</option>
<option value="GO">Goías</option>
</select>
</label>
</fieldset>

<fieldset>
<legend>Dados de Acesso</legend>
<label>Login: <span>* Sem acentos</span><input type="text" /></label>
<label>Sennha: <span>* Mínimo 6 caracteres</span><input type="password" /></label>
<label>Confirmação: <input type="password" /></label>
</fieldset>
<input type="submit" name="Enviar" value="Enviar" class="bntsubmit"/>
</form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só mais uma pergunta, teria como eu testar esse formulário na minha maquina local utilizando o Wamp ou Xamp?... é pq ainda nao estou com site hospedado em plano php, e gostaria muito de testar o formulario ve se esta enviando mesmo por email as informações, antes mesmo de criar um site para algum cliente... mais uma vez obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz o seguinte meu amigo..

 

Primeiro você coloca os nomes nos inputs por exemplo

<label>Nome: <span>* Somente o primeiro nome</span><input type="text" /></label>
Esta sem nome o input...

Cara refaz esse form e só deixe a função mail comentada e dê um echo em $mensagem para ver todos os dados...

 

segue um exemplo

 

$nome = $_POST['nome'];
$email = $_POST['email'];
$telefone = $_POST['telefone'];
$mensagem = $_POST['comentario'];
$txtemail = $to;
$empresa = "Empresa ";
 
// Escreve a mensagem em formato HTML
$mens = "<font face='Verdana, Arial, Helvetica, sans-serif' size='1'>";
$mens .= "<b>Contato</b><br><br>";

$mens .= "---------------------------------------------<br>";
$mens .= "Nome: $nome <br>";
$mens .= "---------------------------------------------<br>";
$mens .= "E-mail: $email <br>";
$mens .= "---------------------------------------------<br>";
$mens .= "Telefone: $telefone <br>";
$mens .= "---------------------------------------------<br>";
$mens .= "Mensagem: $mensagem <br>";
$mens .= "---------------------------------------------<br>";


$mens .= "<br>";
$mens .= "<br>";
$mens .= "Enviada em ".date("d/m/Y"). "<br>";


// Monta o cabecalho
$headers = "From: $empresa <$email>\n";
$headers .= "X-Sender: <$email>\n";
$headers .= "Content-Type: text/html; charset=utf-8\n";

//Envia o email
mail($txtemail,$departamento,$mens,$headers);
//mail("email@email.com.br",$departamento,$mens,$headers);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz o seguinte meu amigo..

 

Primeiro você coloca os nomes nos inputs por exemplo

<label>Nome: <span>* Somente o primeiro nome</span><input type="text" /></label>
Esta sem nome o input...

Cara refaz esse form e só deixe a função mail comentada e dê um echo em $mensagem para ver todos os dados...

 

segue um exemplo

 

$nome = $_POST['nome'];
$email = $_POST['email'];
$telefone = $_POST['telefone'];
$mensagem = $_POST['comentario'];
$txtemail = $to;
$empresa = "Empresa ";
 
// Escreve a mensagem em formato HTML
$mens = "<font face='Verdana, Arial, Helvetica, sans-serif' size='1'>";
$mens .= "<b>Contato</b><br><br>";

$mens .= "---------------------------------------------<br>";
$mens .= "Nome: $nome <br>";
$mens .= "---------------------------------------------<br>";
$mens .= "E-mail: $email <br>";
$mens .= "---------------------------------------------<br>";
$mens .= "Telefone: $telefone <br>";
$mens .= "---------------------------------------------<br>";
$mens .= "Mensagem: $mensagem <br>";
$mens .= "---------------------------------------------<br>";


$mens .= "<br>";
$mens .= "<br>";
$mens .= "Enviada em ".date("d/m/Y"). "<br>";


// Monta o cabecalho
$headers = "From: $empresa <$email>\n";
$headers .= "X-Sender: <$email>\n";
$headers .= "Content-Type: text/html; charset=utf-8\n";

//Envia o email
mail($txtemail,$departamento,$mens,$headers);
//mail("email@email.com.br",$departamento,$mens,$headers);

 

Viiixiii... ai complicou mais mano... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não querendo fazer flood, teria como alguem me indicar um bom tuto aqui do forum mesmo, que ensine como criar um form.php para poder usar no xhtml desde o zero??.... obrigado.

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.