Jump to content
amanddda

E-mail não reconhece quebra de linha

Recommended Posts

Ao enviar o e-mail com os dados preenchidos em um formulário, chega assim:

Alteração Cadastral -- Data de Alteração: 01/02/2017 Nome: Amanda Cargo: Assistente Salário: 1.000,00 Centro de Custo: ADM Solicitado por: Sandra

Como fazer com que quebre a linha?

if( PATH_SEPARATOR ==';'){ $quebra_linha="\r\n";
 
} elseif (PATH_SEPARATOR==':'){ $quebra_linha="\n";
 
} elseif ( PATH_SEPARATOR!=';' and PATH_SEPARATOR!=':' )  {echo ('Esse script não funcionará corretamente neste servidor, a função PATH_SEPARATOR não retornou o parâmetro esperado.');
 
} 

//pego os dados enviados pelo formulário 
$para= "-, -";
$assunto= "Alteração Cadastral";
$nome= $_REQUEST['nome'];
$cargo= $_REQUEST['cargo'];
$salario= $_REQUEST['salario'];
$ccusto= $_REQUEST['ccusto'];
$dtalter= $_REQUEST['dtalter'];
$usuario= $_REQUEST['usuario'];
 
$imagem = isset($_FILES["imagem"]) ? $_FILES["imagem"] : FALSE; 
 
if(file_exists($imagem["tmp_name"]) and !empty($imagem)){ 
 
$fp = fopen($_FILES["imagem"]["tmp_name"],"rb"); 
$anexo = fread($fp,filesize($_FILES["imagem"]["tmp_name"])); 
$anexo = base64_encode($anexo); 
 
fclose($fp); 
 
$anexo = chunk_split($anexo); 

 
$boundary = "XYZ-" . date("dmYis") . "-ZYX"; 
 
$mens = "--$boundary" . $quebra_linha . ""; 
$mens .= "Content-Transfer-Encoding: 8bits" . $quebra_linha . ""; 
$mens .= "Content-Type: text/html; charset=\"ISO-8859-1\"" . $quebra_linha . "" . $quebra_linha . ""; //plain 
$mens .= "Alteração Cadastral\n\n";
$mens .= "Data de Alteração: $dtalter\n";
$mens .= "Nome: $nome\n";
$mens .= "Cargo: $cargo\n";
$mens .= "Salário: $salario\n";
$mens .= "Centro de Custo: $ccusto\n";
$mens .= "Solicitado por: $usuario\n";
$mens .= "--$boundary" . $quebra_linha . ""; 
$mens .= "Content-Type: ".$imagem["type"]."" . $quebra_linha . ""; 
$mens .= "Content-Disposition: attachment; filename=\"".$imagem["name"]."\"" . $quebra_linha . ""; 
$mens .= "Content-Transfer-Encoding: base64" . $quebra_linha . "" . $quebra_linha . ""; 
$mens .= "$anexo" . $quebra_linha . ""; 
$mens .= "--$boundary--" . $quebra_linha . ""; 
 
$headers = "MIME-Version: 1.0" . $quebra_linha . ""; 
$headers .= "From: $email_from " . $quebra_linha . ""; 
$headers .= "Return-Path: $email_from " . $quebra_linha . ""; 
$headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"" . $quebra_linha . ""; 
$headers .= "$boundary" . $quebra_linha . ""; 
 
 
//envio o email com o anexo 
mail($para,$assunto,$mens,$headers, "-r".$email_from); 
 
header("location:alter.php?msg=enviado");
 
} 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By rogerblower
      o Google me avisou de dois erros no meu site;
       
      Clickable elements too close together
      Text too small to read
       
      Na verificação constatei que o erro é;
       
      Fatal error:  Call to undefined function db_connect() in
       
      O php não me mostra esse erro mesmo habilitando os erros no php ini os arquivos de conexão que estou usando são;
       
      ini.php
      <?php define('DB_HOST', 'localhost'); define('DB_USER', 'user'); define('DB_PASS', 'senha'); define('DB_NAME', 'banco'); ini_set('display_errors', true); error_reporting(E_ALL); require_once 'functions.php'; functions.php
       
      <?php function db_connect() { $pdo = new PDO('mysql:host=' . DB_HOST . ';dbname=' . DB_NAME . ';charset=utf8', DB_USER, DB_PASS); return $pdo; } function make_hash($str) { return sha1(md5($str)); } function isLoggedIn() { if (!isset($_SESSION['logged_in']) || $_SESSION['logged_in']!== true) { return false; } return true; } O erro esta nesta linha
      <?php $pdo = db_connect(); $sql = $pdo->prepare("SELECT * FROM servicos "); $sql->execute(); while($row=$sql->fetch(PDO::FETCH_ASSOC)){ echo'<a href="servicos.php?id='.$row['id'].'">'.$row['servico'].'</a>'; } Incluo a conexão com banco na header.php e nas demais páginas não aparece o erro
      realmente não sei o que pode estar acontecendo.
      se alguém pode me ajudar?
       
      Obrigado
       
    • By violin101
      Caros amigos, saudações...
       
      Por favor, me perdoa em recorrer ao auxílio dos amigos.
       
      Tenho os seguintes CAMPOS no Mysql:
      ===[ id_movimento
      ===[ dta_movimento
      ===[ num_movimento
      ===[ status_movimento
       
      Minha dúvida é o seguinte:
      ==> como faço para no campo num_movimento após o insert no banco de dados, o sistema possa garvar da seguinte forma:
      ========[ pega o ID do movimento = 1
      ========[ pega uma String como:  E = entrada | S = saída | D = devolução
      ========[ grava no campo num_movimento desta forma: E-00001
       
      Na MODEL capturo o último ID desta forma:
      //Pega o Último ID public function lastID(){ return $this->db->insert_id(); }  
      Na CONTROLLER trago a informação do último ID desta forma:
      $ultimoID = $this->movimentos_model->lastID();  
      Grato a todos.
       
      Cesar
    • By nazesaria
      Ola, gostaria de saber se tem alguma forma de eu baixar essas paginas completa em .php, se eu clico nela vai em uma pagina em branco.
      E acessando direto do site não teria como, gostaria de ser por esse metedo, é possível? Como?
    • By R4gn3ls0n
      Ao hospedar um arquivo no phpMyAdmin apareceu esse erro, como posso resolver?
      Linhas:
      -- version 4.3.8
      -- http://www.phpmyadmin.net
      --
      -- Host: localhost:3306
      -- Tempo de geração: 28/02/2018 às 19:49
      -- Versão do servidor: 5.6.32-78.1
      -- Versão do PHP: 5.6.30
       
      ______________________________
       
      SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
      SET time_zone = "+00:00";
       

    • By helkton
      galera minha duvida é a seguinte....
      faço a seguinte busca e monto um pdf pra um certificado, e neste certificado preciso coletar todas as materias referente ao curso do mesmo
      $sqlConteudoCurso = "SELECT * FROM conteudo_curso where idCursoConteudo = '$idCurso' order by idConteudo ASC; $conectaConteudoCurso = $conecta->query($sqlConteudoCurso); //conteudoCurso $pdf->SetFont('Arial', '', 11); // Tipo de fonte e tamanhos $pdf->SetTextColor(10,15,35); $pdf->SetXY(10,75); //Parte chata onde tem que ficar ajustando a posição X e Y while($resultConteudoCurso = $conectaConteudoCurso->fetch_object()){ $conteudoCurso = $resultConteudoCurso->nomeConteudo; $pdf->MultiCell(75, 5, $conteudoCurso,'0', 'L', 0);// Tamanho width e height e posição } ok esta é a consulta que realizo no banco de dados ele me retorna a materia referente ao curso certinho, digamos que o curso tenha umas 20 matérias, ele vai imprimir certinho conforme as configurações de espaçamentos...
      AGORA O B.O é seguinte quando o curso acontece de ter tipo umas umas 40 MATÉRIAS ele acaba gerando outra página de pdf
      o que eu queria era que não gerasse outra pagina e sim partisse para o lado direito, pois é um certificado
      TIPO ASSIM....
      MATERIA 1 DO CURSO 1 MATERIA 11 DO CURSO 1 MATERIA 2 DO CURSO 1 MATERIA 12 DO CURSO 1 MATERIA 3 DO CURSO 1 MATERIA 13 DO CURSO 1 MATERIA 4 DO CURSO 1 MATERIA 14 DO CURSO 1 MATERIA 5 DO CURSO 1 MATERIA 15 DO CURSO 1 MATERIA 6 DO CURSO 1 MATERIA 16 DO CURSO 1 MATERIA 7 DO CURSO 1 MATERIA 17 DO CURSO 1 MATERIA 8 DO CURSO 1 MATERIA 18 DO CURSO 1 MATERIA 9 DO CURSO 1 MATERIA 19 DO CURSO 1 MATERIA 10 DO CURSO 1 MATERIA 20 DO CURSO 1  
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.