if(mysql_affected_rows()==1)
{
$msg="To activate your account, please click on the following link:\n\n
http://localhost:80/activate.php?email=".urlencode($email)."&key=".$activation;
if(mail($email,"Registration Confirmation", $msg, "From: [email protected]\r\nX-
Mailer: php"))
{
echo '<div> Thank you for registering. A confirmation email has been sent to '.
$email.'.Please click on the link to activate your account then</div>';
}
}
から電子メールを送信。私はブラウザにエコーされたメッセージを表示して、成功したメーリングを示しています。また、[email protected]からOutlook経由で直接yahooアカウントに電子メールを送信しようとしましたが正常に動作します。誰かが、メール機能を動作させるために、ソーススナップやその他の設定を修正するのを手伝ってもらえますか?どうもありがとうございます。
EDIT:次のようにところで、私はまた私のphp.iniのSTMPスクリプトブロックを設定し、
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = mail.mycompany.com
; http://php.net/smtp-port
smtp_port = 25
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = postmaster[email protected]
は私の問題は、ローカルのメールサーバとしての私のローカルコンピュータを設定することであり、私はPHPをeditted。上記のiniと同じですが、それでも動作しません。
<?php
function SendMail($from, $to, $subject, $body)
{
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->Host = "mail.mycompany.com";
$mail->SMTPAuth = true;
$mail->Username = "My name"; // SMTP username
$mail->Password = "mypassword"; // SMTP password = one used in Outlook
$mail->From = "[email protected]";
$mail->FromName = "Registration Confirmation Email";
$mail->AddAddress($to);
$mail->IsHTML(true); // set email format to HTML
$mail->Subject = $subject;
$mail->Body = $body;
if(!$mail->Send())
{
echo "Message could not be sent. <p>";
echo "Mailer Error: " . $mail->ErrorInfo;
return false;
}
return true;
}
?>
【解決済み】
Iは、上記のコードの切り取り領域がphpmailerのを使用して小さいが、実施例を実証するために含まれます。下のポストでそれを私に紹介してくれてありがとう。
ローカルホストからメールを送信できるかどうかわかりませんでした。 –
コードはWindowsシステム上でホストされていますか? – Repox
何が起こっているのか詳細をお知らせください。エラーはありますか?例外はありますか?これはあなたの問題を理解するために最も重要です。 –