Como enviar e-mail usando a função PHP mail ()

Índice:

Anonim

O que é correio PHP?

PHP mail é a função PHP embutida que é usada para enviar e-mails de scripts PHP.

A função mail aceita os seguintes parâmetros;

  • Endereço de email
  • Sujeito
  • Mensagem
  • Endereços de e-mail CC ou BC
    • É uma forma econômica de notificar os usuários sobre eventos importantes.
    • Permita que os usuários entrem em contato com você por e-mail, fornecendo um formulário de contato no site que envia por e-mail o conteúdo fornecido.
    • Os desenvolvedores podem usá-lo para receber erros do sistema por e-mail
    • Você pode usá-lo para enviar e-mail aos assinantes do boletim informativo.
    • Você pode usá-lo para enviar links de redefinição de senha para usuários que esqueceram suas senhas
    • Você pode usá-lo para enviar links de ativação / confirmação por e-mail. Isso é útil ao registrar usuários e verificar seus endereços de e-mail

Neste tutorial, você aprenderá-

  • Por que / quando usar o e-mail PHP
  • Protocolo de Transmissão de Correio Simples
  • Limpando as entradas do usuário de e-mail
  • Secure Mail

Por que / quando usar o e-mail PHP

Enviando e-mail usando PHP

A função de correio do PHP tem a seguinte sintaxe básica

AQUI,

  • “$ To_email_address” é o endereço de e-mail do destinatário de e-mail
  • “$ Subject” é o assunto do email
  • “$ Mensagem” é a mensagem a ser enviada.
  • “[$ Headers]” é opcional, pode ser usado para incluir informações como CC, BCC
    • CC é a sigla para cópia carbono. É usado quando você deseja enviar uma cópia a uma pessoa interessada, ou seja, um e-mail de reclamação enviado a uma empresa também pode ser enviado como CC para o comitê de reclamações.
    • BCC é a sigla para blind carbon copy. É semelhante ao CC. Os endereços de e-mail incluídos na seção BCC não serão exibidos para os outros destinatários.

Protocolo de transmissão de correio simples (SMTP)

PHP mailer usa Simple Mail Transmission Protocol (SMTP) para enviar e-mail.

Em um servidor hospedado, as configurações de SMTP já devem ter sido definidas.

As configurações de email SMTP podem ser definidas a partir do arquivo “php.ini” na pasta de instalação do PHP.

Definindo as configurações de SMTP em seu host local Assumindo que você está usando xampp no ​​Windows, localize o “php.ini” no diretório “C: \ xampp \ php”.

  • Abra-o usando o bloco de notas ou qualquer editor de texto. Usaremos o bloco de notas neste exemplo. Clique no menu de edição

  • Clique no menu Encontrar…

  • O menu de diálogo de localização irá aparecer

  • Clique no botão Encontrar Próximo

  • Localize as entradas
    • [função de correio]
    • ; XAMPP: Não remova a semi-coluna se quiser trabalhar com um servidor SMTP como o Mercury
    • ; SMTP = localhost
    • ; smtp_port = 25
    • Remova os pontos-e-vírgulas antes de SMTP e smtp_port e configure o SMTP para seu servidor smtp e a porta para sua porta smtp. Suas configurações devem ser as seguintes
      • SMTP = smtp.example.com
      • smtp_port = 25
      • Observe que as configurações de SMTP podem ser obtidas de seus provedores de hospedagem na web.
      • Se o servidor exigir autenticação, adicione as seguintes linhas.
        • auth_username = Este endereço de e-mail está protegido contra spambots. Você deve habilitar o JavaScript para visualizá-lo.
        • auth_password = example_password
        • Salve as novas alterações.
        • Reinicie o servidor Apache.

Exemplo de email php

Vejamos agora um exemplo que envia um e-mail simples.

Resultado:

Nota: o exemplo acima usa apenas os 4 parâmetros obrigatórios.

Você deve substituir o endereço de e-mail fictício acima por um endereço de e-mail real.

Limpando as entradas do usuário de e-mail

O exemplo acima usa valores codificados no código-fonte para o endereço de e-mail e outros detalhes para simplificar.

Vamos supor que você tenha que criar um formulário de contato para que os usuários preencham os detalhes e depois enviem.

  • Os usuários podem injetar código acidental ou intencionalmente nos cabeçalhos, o que pode resultar no envio de e-mail de spam
  • Para proteger seu sistema contra tais ataques, você pode criar uma função personalizada que higieniza e valida os valores antes de o e-mail ser enviado.

Vamos criar uma função personalizada que valide e higienize o endereço de e-mail usando a função interna filter_var.

Função Filter_var A função filter_var é usada para higienizar e validar os dados de entrada do usuário.

Possui a seguinte sintaxe básica.

AQUI,

  • “Filter_var (…)” é a função de validação e sanitização
  • “$ Field” é o valor do campo a ser filtrado.
  • “TIPO DE SANITIZAÇÃO” é o tipo de sanitização a ser realizada em campo como;
    • FILTER_VALIDATE_EMAIL - retorna verdadeiro para endereços de e-mail válidos e falso para endereços de e-mail inválidos.
    • FILTER_SANITIZE_EMAIL - remove caracteres ilegais de endereços de e-mail. info \ @domain. (com) retorna Este endereço de email está protegido contra piratas. Você deve habilitar o JavaScript para visualizá-lo ...
    • FILTER_SANITIZE_URL - remove caracteres ilegais de URLs. http: //[email protected]é retorna> http: //[email protected]
    • FILTER_SANITIZE_STRING - remove marcas de valores de string. sou negrito passa a ser negrito.

O código a seguir implementa usa uma função personalizada para enviar e-mail seguro.

Resultado:

Secure Mail

Os emails podem ser interceptados durante a transmissão por destinatários indesejados.

Isso pode expor o conteúdo do e-mail a destinatários indesejados.

O correio seguro resolve esse problema transmitindo e-mails por meio do protocolo HTTPS (Hypertext Transfer Protocol Secure).

HTTPS criptografa mensagens antes de enviá-las.

Resumo

  • O PHP embutido na função mail () é usado para enviar e-mail a partir de scripts PHP
  • As verificações de validação e higienização dos dados são essenciais para o envio de e-mail seguro
  • A função interna do PHP filter_var () fornece uma maneira fácil de usar e eficiente de realizar a sanitização e validação de dados