Ir para conteúdo

POWERED BY:

Arquivado

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

Reginaldo Santos

erro em mensagem de envio

Recommended Posts

bom dia, desculpem se estou abrindo um tópico com esse mesmo título, mas procurei e não encontrei um erro semelhante ao meu.

sou novíssimo nesta área e estou fazendo um trabalho pra faculdade e o professor pediu para que façamos um site e tem que ter php.

estou usando o wampserver 2.0, já fiz as modificações da porta 80 para a 8080, consegui visualizar o site no localhosta8080 até aí tudo bem.

coloquei tudo lá na pasta www como manda o figurino, e estou enfrentando o erro Parse error: parse error in C:\wamp\www\transito\envio.php on line 9. este documento aí em baixo fiz assistindo vídeo aula e achei interessante, pois ele emite uma mensagem de cadastro efetuado com sucesso ou não a quem fez o cadastro e quem administrou a vídeo aula deu certo e o meu não esta dando certo. já tentei excluir a linha e aí o erro vai para linha 10. o que eu devo fazer?




<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Mensagem Enviada</title>

</head>

<?php

if (!empty ($_POST)){

&cab="Form:".$_POST['NOME']."<".$_POST['EMAIL']. "<".$_POST['DDD']. "<".$_POST['TELEFONE']. "<".$_POST['LOGIN']. "<".$_POST['SENHA']. "<".$_POST['MENSAGEM']">\n";

&mensagem= "Contato via site Trânsito \n";

&mensagem.= "NOME: " . &_POST['nome'] . "\n";

&mensagem.= "EMAIL: " . &_POST['email'] . "\n";

&mensagem.= "DDD: " . &_POST['ddd'] . "\n";

&mensagem.= "TELEFONE: " . &_POST['telefone'] . "\n";

&mensagem.= "LOGIN: " . &_POST['login'] . "\n";

&mensagem.= "SENHA: " . &_POST['senha'] . "\n";

&mensagem.= "MENSAGEM: " . &_POST['msg'];

if (mail("reginaldosantosrvs@hotmail.com" , "Formulário de Contato - site Trânsito", &mensagem, &cab));

{

echo "<script type=\"text/javascript \"> alert (\"Sua mensagem foi enviada com sucesso. \n"; history.go(-1);</script> \n";

}

else{

echo "<script type=\"text/javascript \"> alert (\"Ocorreu um erro ao enviar sua mensagem. \n"; history.go(-1);</script> \n";

}


else

{

}

header: ("location:index.php");

}

?>

<body>

</body>

</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu Jesus quanta embolação :skull:

 

Amigo, veja o seguinte

&mensagem.= "NOME: " . &_POST['nome']

O coreto seria:

$mensagem.= "NOME: " . $_POST['nome']

Faça isso nos demais trechos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo note bem os seguintes erros:

 

1 - Como o Alaerte disse, a variavel é identificada pelo o '$' e não '&', substitua em todos

 

2 - na variável '$cab' o $_POST['MENSAGEM'] não esta sendo concatenado corretamente, ou seja tem que estar entre 2 pontos, esta falta um no final

$cab = "Form:".$_POST['NOME']."<".$_POST['EMAIL']. "<".$_POST['DDD']. "<".$_POST['TELEFONE']. "<".$_POST['LOGIN']. "<".$_POST['SENHA']. "<".$_POST['MENSAGEM'].">\n";

3 - para escapar de aspas dentro de aspas você usa a barra '\' para ele interpretar dentro da string, esta faltando isso nos dois echo antes do history

 

4 - Se você começa um abre um if com dois pontos ":" tem que fechar com um "endif;", se abre ele com chave tem que fechar com chave, no caso esta abrindo com dois pontos e fechando com a chave, corrija isso tbm

if (mail("reginaldosantosrvs@hotmail.com" , "Formulário de Contato - site Trânsito", $mensagem, $cab))
{
echo "<script type=\"text/javascript \"> alert (\"Sua mensagem foi enviada com sucesso. \n\"; history.go(-1);</script> \n";
}
    else{
   echo "<script type=\"text/javascript \"> alert (\"Ocorreu um erro ao enviar sua mensagem. \n\"; history.go(-1);</script> \n";
}

5 - você não esta fechando o primeiro if, então não esta reconhecendo o else

 

6 - header é um função, não precisa utilizar dois pontos

if (!empty ($_POST)){
   ...
} else {
    header("location:index.php");
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

estranho o que ocorreu agora. fechei o browser e o abri pelo wampserver e não deu o erro mais, só que não tive a mensagem de que foi enviado ou não com sucesso e também não recebi no meu email.

o código alterado esta aí:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Mensagem Enviada</title>
</head>
<body>
<?php
if (!empty ($_POST)){
$cab= "Form:" .$_POST['NOME'] . "<" . $_POST['EMAIL'] . "<" . $_POST['DDD'] . "<" . $_POST['TELEFONE'] . "<" . $_POST['LOGIN'] . "<" . $_POST['SENHA'] . "<" . $_POST['MENSAGEM']."> \n";
$mensagem="Contato via site Trânsito \n";
$mensagem.="NOME: " . $_POST['nome']." \n";
$mensagem.="EMAIL: " . $_POST['email']." \n";
$mensagem.="DDD: " . $_POST['ddd']." \n";
$mensagem.="TELEFONE:" . $_POST['telefone']." \n";
$mensagem.="LOGIN:" . $_POST['login']." \n";
$mensagem.="SENHA:" . $_POST['senha']." \n";
$mensagem.="MENSAGEM:" . $_POST['msg'];
}if (mail("reginaldosantosrvs@hotmail.com" , "Formulário de Contato - site Trânsito", $mensagem, $cab))
{
echo "<script type=\"text/javascript \"> alert (\"Sua mensagem foi enviada com sucesso. n\"; '\' history.go(-1);</script> \n";
}
else{
echo "<script type=\"text/javascript \"> alert (\"Ocorreu um erro ao enviar sua mensagem. n\"; '\'history.go(-1);</script> \n";
}
header("location:index.php");
?>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem dois html abertos, cuidado com isso

 

 

<html xmlns="http://www.w3.org/1999/xhtml">
<html>

 

você esta testando na web né? pq a função mail n funciona localmente

tem que ver se os dados do POST estão vindo, pq se não estão so vai ir para a index.php, e não vai aparecer mensagem nenhuma

Compartilhar este post


Link para o post
Compartilhar em outros sites

é isso mesmo estou testando na localhost:8080, alterei os dados para não dar conflito como skype.

então quando clico em enviar o browser redireciona para a página inicial que é a index.php.

agora como faço para verificar os dados do post?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tranquilo William, estou tentando aprender devagar ao passo que não tenho nenhuma intenção de seguir na área de programação. É que o professor da faculdade ao qual estou frequentando (Redes de Computadores) passou esse trabalho e até então nunca tinha visto isso e comecei a achar interessante porque você vai construindo e é menos complicado que a linguagem C.

Muito obrigado pela sua ajuda e do nosso amigo alí em cima o Alaerte Gabriel. :yes:

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.