1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Formularios php

Discussão em 'Web Development' iniciada por Fabriziopt, 29 de Agosto de 2007. (Respostas: 5; Visualizações: 1192)

  1. Fabriziopt

    Fabriziopt Power Member

    Boas
    Estou a usar o seguinte código php para fazer um formulário mas esta me a dar ero na dados email linha 13..
    Eu ja tentei modificar mas sem sucesso.
    Já agora verifiquem se o resto do código está certo.sff

    dados_email.php (segue o código)
    CODE
    <?php
    //Inclua a classe de email.
    include("Email.php");
    //Crie um array, contendo os nomes das variáveis enviadas pelo flash.
    $variaveis = array($nome,$email,$mensagem);
    //Crie um array contendo textos que serão exibidos ao lado de cada variável
    $nomes = array('Nome: ','Email: ','Mensagem: ');
    //Instancie um objeto da classe Email, passando 4 argumentos que são eles:
    //Email para onde será enviado
    //Assunto do email
    //Array contendo as variáveis recebidas
    //Array contendo os nomes
    $e = new Email('[email protected],'Assunto do Email',$variaveis,$nomes);
    //Executando o método sendEmail da classe Email.
    $e->sendEmail();
    //Pronto seu email já foi enviado
    ?>


    Que puxa esse outro arquivo(Email.php):
    CODE
    class Email{
    var $_to;
    var $_subject;
    var $_variables;
    var $_headers;
    var $_names;
    var $_message;
    function Email($to,$subject,$variables,$names)
    {
    $this->_to = $to;
    $this->_subject = $subject;
    $this->_variables = $variables;
    $this->_names = $names;
    $this->_headers = "MIME-Version: 1.0\r\n";
    $this->_headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $this->_headers .= "From: EMAIL CONTATO <".$to.">\r\n";
    $this->createMessage();
    }
    function createMessage()
    {
    $this->_message = '
    <html>
    <head>
    <title>.:: EMAIL DE CONTATO ::.</title>
    </head>
    <body>
    <table>';

    for($i=0,$len=sizeof($this->_variables); $i<$len;$i++)
    {
    $this->_message .= '
    <tr>
    <td><b>'.$this->_names[$i].'</b> '.$this->_variables[$i].'</td>
    </tr>
    ';
    };

    $this->_message .= '
    </table>
    </body>
    </html> ';
    }
    function sendEmail()
    {
    if($this->_to != '' && $this->_variables != ''){
    mail($this->_to, $this->_subject, $this->_message, $this->_headers);
    echo 'Enviado.';
    }else{
    echo 'Erro no envio.';
    }
    }
    };
    ?>


    E por fim, o sendmail.php:
    CODE
    <?
    $nome = $_POST["inputNome"];
    $email = $_POST["inputEmail"];
    $mensagem = $_POST["inputMensagem"];


    # quem recebe
    $recipient = "Formulário de contato <[email protected] >";
    $recipient1 = "$nome <$email>";

    # assunto do e-mail
    $subject = " Formulário de contato ";
    $subject1 = " Formulário de contato ";

    # dados formulario
    $dados_formulario .= "
    <html>
    <head>
    <title>..:: Titulo ::..</title>
    </head>
    <style type='text/css'>
    <!--
    A:link {text-decoration: none;}
    A:visited {text-decoration: none;}
    A:hover {text-decoration: nome;}
    -->
    </style>
    <body link='#FF0000' vlink='#FF0000' alink='#FF0000'>
    <p align='left'>
    <font face='Verdana' size='2' color='#006600'><b> Formulário de contato </b></font><br><br>
    <font face='Verdana' size='2' color='#006600'><b>Dados:</u></i></b></font><br><br>
    <font face='Verdana' size='2' color='#000000'><b>Nome:</b></font><font face='Verdana' size='2' color='#000000'> $nome</font><br>
    <font face='Verdana' size='2' color='#000000'><b>Email:</b></font><font face='Verdana' size='2' color='#000000'> $email</font><br>
    <font face='Verdana' size='2' color='#000000'><b>Mensagem:</b></font><font face='Verdana' size='2' color='#000000'> $mensagem</font><br>
    </p>
    </body>
    </html>
    ";

    # mensagem quem envia
    $mensagem .= "
    <html>
    <head>
    <title>..:: Titulo ::..</title>
    </head>
    <body>
    <p align='center'>
    <font face='Verdana' size='2' color='#006600'><b>$nome</b></font><br><br>
    <font face='Verdana' size='2' color='#000000'><b>Obrigado por entrar em contato!</b></font><br>
    <font face='Verdana' size='2' color='#000000'><b>Suas informações foram enviadas com sucesso!</b></font><br><br>
    <font face='Verdana' size='2' color='#006600'><b> Formulário de contato </b></font>
    </p>
    </body>
    </html>
    ";

    # quem envia
    $headers .= "From: $nome <$email>\n";
    $headers .= "Content-Type: text/html; charset=iso-8859-1\r\n";

    $headers1 .= "From: Cast Comunicação :: Formulário de Contato <[email protected]>\n";
    $headers1 .= "Content-Type: text/html; charset=iso-8859-\r\n";

    # envia e-mails
    mail($recipient, $subject, $dados_formulario, $headers);

    mail($recipient1, $subject1, $mensagem, $headers1);

    ?>

    Abraço
     
  2. CoolMaster

    CoolMaster Power Member

    $e = new Email('[email protected],'Assunto do Email',$variaveis,$nomes);

    Falta uma ' aí no primeiro parametro...

    Não era muito melhor mostrares logo a linha 13 em vez de tudo? Bha..
     
  3. int

    int Power Member

    lolol
     
  4. Fabriziopt

    Fabriziopt Power Member

    lool
    Mesmo assim nao me aparece o mail na caixa
    Vou por aqui mesmo o meu caso em questao

    Formulario.html
    <form method="post" action="dados_email.php">
    Nome:<input type=text name="nome"><br>
    Email:<input type=text name="email"><br>
    <br>
    Assunto:<br>
    <input type=radio name="assunto" value="patrocinio">Patrocínio<br>
    <input type=radio name="assunto" value="pedidos">Pedir músicas<br>
    <input type=radio name="assunto" value="parcerias">Parcerias<br>
    <input type=radio name="assunto" value="sujestoes">Sujestões<br><br>
    Comentário:<input type=text name="comentario"><br>
    <br>
    <input type=submit value="Enviar dados">
    </form
    >

    dados-email.php
    <?php
    //Inclua a classe de email.
    include("Email.php");
    //Crie um array, contendo os nomes das variáveis enviadas pelo flash.
    $variaveis = array($nome,$email,$comentario,$assunto);
    //Crie um array contendo textos que serão exibidos ao lado de cada variável
    $nomes = array('nome','email','comentario','assunto');
    //Instancie um objeto da classe Email, passando 4 argumentos que são eles:
    //Email para onde será enviado
    //Assunto do email
    //Array contendo as variáveis recebidas
    //Array contendo os nomes
    $e = new Email('[email protected]','Assunto do Email',$variaveis,$nomes);
    //Executando o método sendEmail da classe Email.
    $e->sendEmail();
    //Pronto seu email já foi enviado
    ?>
    Email.php
    <?php
    class Email{
    var $_to;
    var $_subject;
    var $_variables;
    var $_headers;
    var $_names;
    var $_message;
    function Email($to,$subject,$variables,$names)
    {
    $this->_to = $to;
    $this->_subject = $subject;
    $this->_variables = $variables;
    $this->_names = $names;
    $this->_headers = "MIME-Version: 1.0\r\n";
    $this->_headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $this->_headers .= "From: EMAIL CONTATO <".$to.">\r\n";
    $this->createMessage();
    }
    function createMessage()
    {
    $this->_message = '
    <html>
    <head>
    <title>.:: EMAIL DE CONTACTO ::.</title>
    </head>
    <body>
    <table>';

    for($i=0,$len=sizeof($this->_variables); $i<$len;$i++)
    {
    $this->_message .= '
    <tr>
    <td><b>'.$this->_names[$i].'</b> '.$this->_variables[$i].'</td>
    </tr>
    ';
    };

    $this->_message .= '
    </table>
    </body>
    </html> ';
    }
    function sendEmail()
    {
    if($this->_to != '' && $this->_variables != ''){
    mail($this->_to, $this->_subject, $this->_message, $this->_headers);
    echo 'Enviado.';
    }else{
    echo 'Erro no envio.';
    }
    }
    };
    ?>

    A mensagem aparece como enviada mas chego a caixa e nada..
    Obrigado pela a ajuda
    Abaço
     
  5. K0mA

    K0mA Power Member

    Experimenta lá a meter só este código para testar:

    De seguida vai ver se o email chegou.
     
    Última edição: 29 de Agosto de 2007
  6. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Certifica-te de que não está a ir para a caixa do SPAM (Lixo Electrónico).

    Já agora, mais uma vez volto a repetir, usa as tags [php] e [/php] em volta do código! É terrível ter de ler as coisas assim.
     

Partilhar esta Página