2017-09-04 11 views
-1
<?php 

require 'PHPMailerAutoload.php'; 
//echo !extension_loaded('openssl')?"Not Available":"Available <br/>"; 

$name = $_POST['username']; 
$email = $_POST['email']; 
$number = $_POST['phone']; 
$profession = $_POST['profession']; 

$to = '[email protected]'; 
$subject = 'user registration'; 
$phone = "phone number:".$number; 

$message = "client details:"."\n"."Name:".$name."\n"."email:".$email."\n"."phone number:".$number."\n"."profession:".$profession; 

$headers = "From:".$email; 

$mail = new PHPMailer; 

//$mail->SMTPDebug = 3;        

$mail->isSMTP();          
$mail->Host = 'ssl://smtp.gmail.com';  
$mail->SMTPAuth = true;        
$mail->Username = '[email protected]';      
$mail->Password = 'password';       
$mail->SMTPSecure = 'ssl'; 
$mail->Port = 465; 

$mail->setFrom($email, $name); 

$mail->Subject = $subject; 
$mail->Body = $message; 

if($mail->send()) { 
    header("Location: ../../thankyouNew.html"); 
} 
else { 
    header("Location: ../../somethingWrong.html"); 
} 

?>PHPのメール()関数はphpmailerの

コードは、他のブロックを実行している使用して動作していない、私はメールの後[email protected]にメールを送信し、thankyou.htmlページにユーザーを返すようにしたいです関数が実行されています。私はこのPHPには新しく、前もってお手伝いいただきありがとうございます。 以下の行を忘れてください...

+1

あなたのPHPエラーログには何がありますか? – flauntster

+0

あなたの質問をフォーマットしようとします。私たちはほとんどそれを読むことができません。そして働かないということは何を意味しますか?それはあなたにエラーや何かを与えますか? –

+0

エラーログを確認して、エラーが発生していないか確認してください。また、 '<?php'を起動した直後に、現在のコードに' error_reporting(E_ALL); ini_set( 'display_errors'、1);を追加し、コードをもう一度実行して何かがあるかどうかを確認してください。 –

答えて

1

実際にメールを送信する場所は指定していません。以下に示すように、addAddress()メソッドを使用する必要があります。このメソッドは1つのパラメータを必要としますが、あなたのメソッドと同じ方法で2つを指定することができます。最初にターゲットアドレス、次にオプションの表示名。

$mail = new PHPMailer; 

// ... 

$mail->setFrom($email, $name); 
$mail->addAddress($to); // Add this method to specify a recipient 
$mail->Subject = $subject; 
$mail->Body = $message; 
if($mail->send()) { 
    // ... 
} 
// ... 
+0

私はそれをしましたが、まだメールを受信して​​いませんでした。この前にサーバに何かを設定する必要がありますか? – vihar

+0

申し訳ありませんが、問題は明らかではありません。したがって、私たちはPHPMailerから実際のエラーメッセージを受け取ることになります。 'else'ブロックに' echo $ mail-> ErrorInfo; 'を追加してください。もしそれがあなたに何も与えていないなら、どこかにオブジェクトを作成した後に '$ mail-> SMTPDebug = 2;'をセットし、 '$ mail-> Debugoutput = function($ str、$ level){echo" De-bug:$レベル;メッセージ:$ str "; }; 'elseブロック – Qirel

関連する問題