Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 285

Formulário

17-03-2015 10:02

O formulário abaixo ele envia logado e deslogado.
Estou com problema na autenticação via envio de smtp, alguém pode me ajudar nesse caso?
Quando nao colocamos a variável
$emailContato , ele não envia.

<?php session_start();     //$emailContato      = 'teste@gmail.com';         $emailRemetente     = 'admin@admin.com.br';         $senhaEmail         = 'admin1234';          require_once("phpmailer/class.phpmailer.php");               //funcões//   function tratar_letras($info)   {     $info = ereg_replace("[ÁÀÂÃ]","A",$info);     $info = ereg_replace("[áàâãª]","a",$info);     $info = ereg_replace("[ÉÈÊË]","E",$info);     $info = ereg_replace("[éèêë]","e",$info);     $info = ereg_replace("[ÍÌÎÏ]","I",$info);     $info = ereg_replace("[íìîï]","i",$info);     $info = ereg_replace("[ÓÒÔÕ]","O",$info);     $info = ereg_replace("[óòôõº]","o",$info);     $info = ereg_replace("[ÚÙÛ]","U",$info);     $info = ereg_replace("[úùû]","u",$info);     $info = ereg_replace("ýÿ","y",$info);     $info = str_replace("Ý","Y",$info);     $info = str_replace("Ç","C",$info);     $info = str_replace("ç","c",$info);     $info = str_replace("Ñ","N",$info);     $info = str_replace("ñ","n",$info);          $info = strtr($info, "ÀÁÂÃÄÅÃáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ", "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn");     return $info;   }     //fim das funcões// ?> </head> <body>             <form action="#" method="post" >             <?php                                  if(isset($_POST['submit'])){                                  if(PHP_OS == "Linux") $quebra_linha = "\n"; //Se for Linux                 elseif(PHP_OS == "WINNT") $quebra_linha = "\r\n"; // Se for Windows                 else die("Este script nao esta preparado para funcionar com o sistema operacional de seu servidor");                                  $nome           = $_POST['nome'];                 $nomeTratado    = tratar_letras($_POST['nome']);                 $empresa        = $_POST['empresa'];                 $telefone       = $_POST['telefone'];                 $email          = $_POST['email'];                 $como_conheceu  = $_POST['como_conheceu'];                 $mensagem       = $_POST['mensagem'];                 $assunto        = "Contato via site";                                   $date           = date("d/m/Y H:i:s");               //função para pegar a data de envio do e-mail                 $ip             = $_SERVER['REMOTE_ADDR'];           //função para pegar o ip do usuário                 $navegador      = $_SERVER['HTTP_USER_AGENT'];       //função para pegar o navegador do visitante                 $verifica_email ="^[a-z A-Z 0-9 _ - .]+[@]+[a-z A-Z 0-9 _ - .]+[.]+[a-z A-Z 0-9 _ - .]^";                                                                          $erros = "";                 if(empty($_POST['nome']))                 {                     $erros .= '<div id="Erro"><img src="imagens/erro.gif" />Insira seu NOME</div><br />';                 }                                  elseif(empty($_POST['telefone']))                 {                     $erros .= '<div id="Erro"><img src="imagens/erro.gif" />Insira seu TELEFONE</div><br />';                 }                                  elseif(empty($_POST['email']))                 {                     $erros .= '<div id="Erro"><img src="imagens/erro.gif" />Insira um EMAIL</div><br />';                 }                                  elseif (!preg_match($verifica_email,$email))                 {                     $erros .= '<div id="Erro"><img src="imagens/erro.gif" />Insira um EMAIL válido</div><br />';                 }                                  elseif(empty($_POST['como_conheceu']))                 {                     $erros .= '<div id="Erro"><img src="imagens/erro.gif" />Selecione uma das opções COMO NOS CONHECEU?</div><br />';                 }                                                         elseif(empty($_POST['mensagem']))                 {                     $erros .= '<div id="Erro"><img src="imagens/erro.gif" />Escreva sua MENSAGEM</div><br />';                 }                                  elseif(empty($_POST['captcha']))                 {                     $erros .= '<div id="Erro"><img src="imagens/erro.gif" />Digite o código</div><br />';                 }                                  elseif($_SESSION['captcha'] !== $_POST['captcha'])                 {                     $erros .= '<div id="Erro"><img src="imagens/erro.gif" />O código digitado não confere</div><br />';                 }                                  if( empty($erros) ){                                      $dominio = str_replace('www.', '', $dominio);                                          $phpmail = new PHPMailer();                                          $phpmail->IsSMTP(); // envia por SMTP                     $phpmail->Host      = $dominio; // SMTP servers                     $phpmail->SMTPAuth  = true; // Caso o servidor SMTP precise de autenticação                     $phpmail->Username  = $emailRemetente; // SMTP username                     $phpmail->Password  = $senhaEmail; // SMTP password                                      $phpmail->IsHTML(true);                     $phpmail->From      = $emailRemetente;                     $phpmail->FromName  = $nomeTratado;                     $phpmail->Sender    = $emailRemetente;                                      $phpmail->AddAddress($emailContato);                     //$phpmail->AddCC ('xxxxx@dominio.com');                     //$phpmail->AddBCC('xxxxx@dominio.com');                     $phpmail->AddReplyTo($email, $nomeTratado);                     $phpmail->Subject = $assunto;                     $phpmail->Body .= "<h2>Contato via site $nomeSite</h2>                     <div style=\"font: 12px calibri, arial, tahoma;\">                     <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">                         <tr>                             <td valign=\"top\" style=\"width: 160px;\">                                 <strong>                                     Nome:<br />                                     Empresa:<br />                                     Telefone:<br />                                     Email:<br />                                     Como nos conheceu?:<br />                                     Mensagem:<br />                                 </strong>                             </td>                             <td valign=\"top\">                                 $nome<br />                                 $empresa<br />                                 $telefone<br />                                 $email<br />                                 $como_conheceu<br />                             </td>                         </tr>                     </table>                     $mensagem<br />                     </div>                     <font color='#666666' size='1'><br /><br />Email enviado em: $date - IP: $ip <br /> (Enviado via SMTP)</font><br />";                                  $send = $phpmail->Send();                 if($send)                 {                     echo '<div id="Sucesso"><img src="imagens/sucesso.png" />Email Enviado com Sucesso...</div><br />';                     echo '<meta HTTP-EQUIV="Refresh" CONTENT="6;URL='.$url.'">' ;                 }                 if(!$send)                 {                         // mensagem que vai para o destinatario                         $msg="                         <h2>Contato via site $nomeSite</h2>                         <div style=\"font: 12px calibri, arial, tahoma;\">                         <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">                             <tr>                                 <td valign=\"top\" style=\"width: 160px;\">                                     <strong>                                         Nome:<br />                                         Empresa:<br />                                         Telefone:<br />                                         Email:<br />                                         Como nos conheceu?:<br />                                         Mensagem:<br />                                     </strong>                                 </td>                                 <td valign=\"top\">                                     $nome<br />                                     $empresa<br />                                     $telefone<br />                                     $email<br />                                     $como_conheceu<br />                                 </td>                             </tr>                         </table>                         $mensagem<br /><br />                         </div>                         <font color='#666666' size='1'><br /><br />Email enviado em: $date - IP: $ip <br /> (Enviado deslogado)</font><br />";                                                  /* Montando o cabeçalho da mensagem */                         $headers = "MIME-Version: 1.1".$quebra_linha;                         $headers .= "Content-type: text/html; charset=utf-8".$quebra_linha;                         // Perceba que a linha acima contém "text/html", sem essa linha, a mensagem não chegará formatada.                         $headers .= "From: \"$nomeSite\" <$emailRemetente>".$quebra_linha;                         $headers .= "Return-Path: \"$nomeSite\" <$emailRemetente>".$quebra_linha;                         // Esses dois "if's" abaixo são porque o Postfix obriga que se um cabeçalho for especificado, deverá haver um valor.                         // Se não houver um valor, o item não deverá ser especificado.                         if(strlen($comcopia) > 0) $headers .= "Cc: ".$comcopia.$quebra_linha;                                                  if(strlen($comcopiaoculta) > 0) $headers .= "Bcc: ".$comcopiaoculta.$quebra_linha;                         $headers .= "Reply-To: \"$nomeTratado\" <$email>".$quebra_linha;                         // Note que o e-mail do remetente será usado no campo Reply-To (Responder Para)                                                  /* Enviando a mensagem */                         $mail = mail($emailContato, $assunto, $msg, $headers, "-r". $emailContato);                                              // verifica se email foi enviado com sucesso                       if($mail==TRUE)                         {                             echo '<div id="Sucesso"><img src="imagens/sucesso.png" />Email Enviado com Sucesso!</div>';                             echo '<meta HTTP-EQUIV="Refresh" CONTENT="6;URL='.$url.'">' ;                         }                         else                          {                             echo '<div id="Erro"><img src="imagens/erro.gif" />Email Falhou!</div>';                         }                 }                 }                 else                 {                     echo $erros;                 }                 }             ?>             <input  placeholder="Nome*" onKeyUp="UcWords(this)" name="nome" value="<?php echo($nome);?>" type="text" size="35" required /><br />             <input placeholder="Empresa" value="<?php echo($empresa);?>" name="empresa" id="empresa" type="text" size="30" onKeyUp="UcWords(this)" /><br />             <input placeholder="Telefone* (##)#########" name="telefone" value="<?php echo($telefone);?>" type="text" size="30" maxlength="13" onKeyUp="return autoTab(this, 13, event);" onKeyPress="formatar(this, '(##)#########');return numbersonly(this, event)" required /><br />             <input placeholder="Email*" onKeyUp="minusculas(this)" name="email" value="<?php echo($email);?>" type="text" size="35" required /><br />             <label>Como nos conheceu? <span class="alerta">*</span></label><br/>             <select name="como_conheceu" required >                 <option value="">-- Selecione --</option>                 <option <? if ($como_conheceu== 'Busca do Google') echo "selected"; ?> value="Busca do Google">Busca do Google</option>                 <option <? if ($como_conheceu== 'Outros Buscadores') echo "selected"; ?> value="Outros Buscadores">Outros Buscadores</option>                 <option <? if ($como_conheceu== 'Links patrocinados') echo "selected"; ?> value="Links patrocinados">Links patrocinados</option>                 <option <? if ($como_conheceu== 'Facebook') echo "selected"; ?> value="Facebook" onClick="esconde()">Facebook</option>                 <option <? if ($como_conheceu== 'Twitter') echo "selected"; ?> value="Twitter" onClick="esconde()">Twitter</option>                 <option <? if ($como_conheceu== 'Google+') echo "selected"; ?> value="Google+" onClick="esconde()">Google+</option>                 <option <? if ($como_conheceu== 'Indicação de um amigo') echo "selected"; ?> value="Indicação de um amigo" onClick="esconde()">Indicação de um amigo</option>                 <option <? if ($como_conheceu== 'Outros') echo "selected"; ?> value="Outros" onClick="esconde()">Outros</option>             </select>             <br />             <textarea placeholder="Mensagem*" name="mensagem" cols="37" rows="10" required><?=$mensagem;?></textarea><br />             <label>Código de segurança <span class="alerta">*</span>:</label><br/>             <input type="text" name="captcha" value="" size="20" required /><br /><br />             <label style="color: #fff;">.</label><img src="captcha/captcha.php" alt="código captcha" /><br /><br />             <label style="color: #fff;">.</label><input type="submit" name="submit" value="Enviar mensagem"/><br /><br />             <label style="color: #fff;">.</label>Os campos com (<span class="alerta">*</span>) são obrigatórios.<br /><br /><br /><br />         </form>         </div>         <div class="contatos">                                      <strong>Email: <?=$emailContato;?></strong><br /><br />                               <br class="clear" />     </div>      </main> </body> </html>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17511
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Formulário

17-03-2015 13:13

Sem o $EmailContato não envia os dados porque não tem destino definido para o e-mail.

Também parece que você está usando uma class para enviar e-mail e a função mail() ao mesmo tempo. Deveria ser só uma das opções.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado