xaamp環境でphpでメールを外部に送信できるように設定。
smtpサーバはnifty。
smtpで認証が必要な設定。

●php.iniの設定

私の場合はC:xamppphpphp.ini
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
;smtp_port = 25
smtp_port = 587
;25をコメントアウトして587を追加

; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = postmaster@localhost
sendmail_from = xyz0123@nifty.com
;送信元アドレスを追加

●Mercury/32の設定

XAMPP Control Panel Application
MercuryのAdminボタンをクリックするとソフト画面が起動
メニューバー >
Configuration >
Protocol modules > MercuryC SMTP relaying clientをチェックTP relaying client
Mercury SMTP Server > Generalタブ >GeneralのAlternate portに「587」
Connection controlタブのRelaying controlのDo not permit SMTP relaying of non-local mailのチェックを外す。
すべてのチェックが外れた状態になると思われる。
Mercury SMTP Relay Client Configuration >
SMTP”Smart” Host details >
Smart host name:smtp.nifty.com
Connection port/type:587

Credentials for SMTP Authentication,if required
Login username:xyz0123
Password:xxxxxxx

●メール送信phpファイル

<form action=”” method=”post”>
<input type=”submit” name=”Send” value=”送信”>
</form>
<?php

// 現在の言語を日本語に設定
mb_language(“ja”);
// 内部文字コードをUTF-8に設定
mb_internal_encoding(“UTF-8”);

if(isset($_POST[‘Register’])){
//宛先、題名、本文、送信メールアドレスの順
     $re = mb_send_mail(“xxxxxxx@gmail.com”,”test”,”test”,”From:xyz0123@nifty.com”);
     if ($re) {
     print “送信完了!”;
     } else {
     print “送信失敗。”;
     }
}
?>