[Ajuda]Mail PHP Form

Boas a todos.

Eu estou a fazer um formulário externo em php para colocar numa página de wordpress mas não consigo envia-lo por e-mail porque alguns campos podem não ser preenchidos.

Até agora consegui dar print de todos os dados registados no formulário para o browser, o problema é que usei alguns issets por exemplo:

PHP:
    echo "<b>Nome: </b>$name<br>";
    echo "<b>NIF / NIPC: </b>$nif<br>";
    echo "<b>Endereço de E-mail: </b>$email<br>";
    if (isset($solicitacao)){
        echo "<b>Solicitação: </b>$solicitacao<br>";
    }
    if (isset($selecionado)){
        echo "<b>Solicitação: </b>$selecionado<br>";
    }
    if (isset($eterceiro)){
        echo "<b>E-mail do terceiro: </b>$eterceiro<br>";
    }
    if (isset($texto)){
        echo "<b>Observações: </b>$texto";
    }

Eu agora preciso de em vez de dar echo das variáveis, envia-las por email mas pelo que eu estive a ver não há nenhuma forma de enviar um dado com o isset, o que posso fazer?
 
O "isset" é só uma verificação de se o campo está preenchido. Por exemplo, se o campo de mail estiver preenchido podes enviar o email.

Procura no google por "php send email" vais encontrar diversos exemplos, e como já tens variáveis nos teus campos de preenchimento é só trocar nos exemplos que encontrares.
 
No php existem duas formas de enviar e-mails. Através de SMTP ou de phpmailer (mailto).
Eu pessoalmente sugiro o uso do SMTP mas nem todos os alojamentos permitem tal operação diretamente do PHP.

No entanto e se é para colocar no Wordpress, porque não usas um plugin tipo "Contact Form 7" ? Só tens que criar o formulário e adicionar uma página com o shortcode dessa página.
 
Eu acho que vocês não entenderam o meu problema, há alguns campos que podem ou não ser preenchidos, e eu ao guardar em variáveis o conteúdo desses campos, alguns como estão vazios há variáveis que não existem, logo no e-mail não posso colocar essa variável, o que eu queria era se essa variável tiver conteúdo envia para a $msg do mail senão não envia nada dessa variável
 
Em vez de fazeres echo concatenas as strings numa variável. Depois no final envias essa variável como conteúdo do e-mail.
 
No php existem duas formas de enviar e-mails. Através de SMTP ou de phpmailer (mailto).
Eu pessoalmente sugiro o uso do SMTP mas nem todos os alojamentos permitem tal operação diretamente do PHP.

No entanto e se é para colocar no Wordpress, porque não usas um plugin tipo "Contact Form 7" ? Só tens que criar o formulário e adicionar uma página com o shortcode dessa página.
Estás a trocar tudo, o PHPMailer é uma biblioteca open source que suporta o envio de mails por SMTP, o PHP é que inclui por defeito a função mail que envia pelo servidor de mail local, e que costuma estar desactivado nos alojamento web porque é partilhado, se o servidor for vosso, podem configurar e não há problema em usar a função mail.

Não existe forma de bloquear o envio por SMTP a não ser que as portas estejam bloqueadas na firewall.

Sobre o tópico
Código:
$msg = "Hello";
echo $msg;
$msg .= "World";
echo $msg;
A concatenação de strings é feita assim.
 
Back
Topo