php
2017-01-20 16 views -1 likes 
-1

PHPフォームでメールを送信したいと思っています。しかし、以下のコードは機能しません。私はどこが間違っているのか理解していません。PHPフォームでメールを送信する

<input name="add" type="submit" id="add" value="Send Requets"> 

<?php 
    if (isset($POST['add'])) { 
     $From ='[email protected]'; 
     $To = '[email protected]'; 
     $Subject = 'Leave Request'; 
     $body = 'You have received a leave request'; 
     $headers = 'From: $From \r\n'; 
     mail($To, $Subject, $body, $headers); 
    } 
?> 
+0

完全なフォーム – Cashbee

+0

を表示してください。この関数のローカルホストまたは開発サーバーはどこですか? –

+0

localhostが使用されています.....他のすべての部分が正常に動作しているので、フルコードは必要ありません。 –

答えて

0

localhostを使用しているので、電子メールを送信するためにlocalhostを構成しない限りうまく動作しません。

sendmailパッケージでlocalhostからメールを送信できます。sendmailパッケージはXAMPPでinbuildです。したがって、XAMPPを使用している場合は、localhostから簡単にメールを送信できます。

たとえば、Gmailにメールを送信するようにC:\xampp\php\php.ini and c:\xampp\sendmail\sendmail.iniを設定することができます。

C:\ xampp \ php \ php.iniにあります。拡張子= php_openssl.dllを見つけて、その行の先頭からセミコロンを削除して、localhost用のgmailでSSLを動作させます。 php.iniファイルで

[mail function]を見つけて、コード

smtp_server=smtp.gmail.com 
smtp_port=587 
error_logfile=error.log 
debug_logfile=debug.log 
[email protected] 
auth_password=your-gmail-password 
[email protected] 

次に、あなたが

覚えて:)行われ、以下にsendmail.ini内のすべての既存のコードを置き換え

SMTP=smtp.gmail.com 
smtp_port=587 
sendmail_from = [email protected] 
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t" 

を変更XAMMPコントロールパネルを使用してサーバーを再起動して、変更内容を有効にします。

0

あなたはこの機能をlocalhost上で実行しています、覚えておいてください!メール機能はlocalhostでは動作しません! localhostでメールを送信したい場合は、SMTP設定を行う必要があります!このコードを開発サーバーにアップロードする必要があります。

+0

ありがとうございます。 localhost上のSMTP設定のための良いリンクはありますか? –

+0

http://stackoverflow.com/questions/5342822/php-mail-function-on-localhost –

+0

http://stackoverflow.com/questions/18288007/php-send-mail-from-localhost –

関連する問題