0

我正在使用 mysql 构建一个表单来保存数据并且运行良好。但我想向注册的用户发送一封电子邮件,欢迎传递一些指示。register.php 文件我放了以下内容:

<form id="Form1" name="Form1" method="post" action="save.php">

我的文件中的 save.php 具有以下代码:

<?php
/*verifico se os dados estao vindos do formulario, porque se uma pessoa acessar essa pagina diretamente 
poderia dar erro, entao eu testo antes*/
if($_SERVER["REQUEST_METHOD"] == "POST") {
$nome         = $_POST["nome"];
$email        = $_POST["email"];
$sexo         = $_POST["sexo"];
$fone         = $_POST["fone"];
$cidade       = $_POST["cidade"];
$estados      = $_POST["estados"];
$mensagem     = $_POST["mensagem"];

//aqui ja expliquei, mas denovo: ele verifica se o arquivo existe
if(file_exists("init.php")) {
    require "init.php";     
} else {
    echo "Arquivo init.php nao foi encontrado";
    exit;
}
//ja expliquei, mas ultima vez: verifica se a função que eu vou usar existe
if(!function_exists("Abre_Conexao")) {
    echo "Erro o arquivo init.php foi auterado, nao existe a função Abre_Conexao";
    exit;
}

Abre_Conexao();
if(@mysql_query("INSERT INTO usuarios VALUES (  NULL , '$nome', '$email', '$sexo', '$fone' , '$cidade', '$estados', '$mensagem' )")) {
               //verifiquei acima se deu certo o comando e aqui verifico se foi mesmo gravado o dado no banco
    if(mysql_affected_rows() == 1){
        echo "Registro efetuado com sucesso<br />";
    }   

} else {
                //verifico se nao estao tentando gravar um dado que ja existe, pois usei UNIQUE na tabela 
    if(mysql_errno() == 1062) {
        echo $erros[mysql_errno()];
        exit;
    } else {    
        echo "Erro nao foi possivel efetuar o cadastro";
        exit;
    }   
    @mysql_close();
}

}
?>


<a href="index.php">BACK</a>

我需要插入文件 save.php 以向注册的人发送带有标准文本的电子邮件。有谁知道该怎么做?

4

3 回答 3

1

您需要:
1. 发送给(收件人)的电子邮件地址
2. 主题
3. 邮件
4. 发件人(您)的电子邮件

$recipient = "someone@example.com";  
$subject = "Subject: Welcome to Somewhere";  
$message = "Dear Somebody\n\n";  
$message .= "Thank you for signing up with Somewhere\n";  
$message .= "You can now sign into your account\n\n";  
$message .= "Thank you!";  
$from = "From: me@mydomain.com";  
mail($recipient, $subject, $message, $from);
于 2013-09-23T03:34:09.543 回答
1

我决定输入以下代码:

 <?php
    require("phpmailer/class.phpmailer.php");
    $mail = new PHPMailer();

    $mail->Username = "email-to-send@gmail.com"; 
    $mail->Password = "*******"; 
    $mail->AddAddress($email); // recipients email
    $mail->FromName = "Name Username"; // readable name

    $mail->Subject = "Subject title";
    $mail->Body    = "Here is the message you want to send to your friend.";  

    $mail->Host = "ssl://smtp.gmail.com"; // GMail
    $mail->Port = 465;
    $mail->IsSMTP(); // use SMTP
    $mail->SMTPAuth = true; // turn on SMTP authentication
    $mail->From = $mail->Username;
    if(!$mail->Send())
        echo "Mailer Error: " . $mail->ErrorInfo;
    else
        echo "Message has been sent";
    ?>

谢谢大家。

于 2013-09-23T13:23:58.880 回答
0

下载 PHPMailer 包.. 将其包含在您的页面中...并将此代码添加到您的 save.php 页面中

$body = "Welcome";
$body = $nome.$body;

$email = new PHPMailer();
$email->IsSendmail();
$email->From      = 'youremailid@xyz.com';
$email->FromName  = 'Your Nmae';
$email->Subject   = 'Welcome Note';
$email->Body      = $body;
$email->AddAddress($email);
$email->Send();
于 2013-09-23T03:28:19.293 回答