2016-09-28 4 views
-2

phpmailerでHTMLフォームの電子メールを送信しようとしています。現在私のプロジェクトには最新のバージョンがありますが、エラーが発生しています。Phpmailer未定義メソッドエラー

コード:

<?php 


if ($_SERVER["REQUEST_METHOD"] == "POST") { 
    $name = trim(filter_input(INPUT_POST, "name", FILTER_SANITIZE_STRING)); 
    $email = trim(filter_input(INPUT_POST, "email", FILTER_SANITIZE_EMAIL)); 
    $adress = trim(filter_input(INPUT_POST, "adress", FILTER_SANITIZE_STRING)); 
    $date = trim(filter_input(INPUT_POST, "date", FILTER_SANITIZE_STRING)); 
    $timefrom = trim(filter_input(INPUT_POST, "timefrom", FILTER_SANITIZE_STRING)); 
    $timeto = trim(filter_input(INPUT_POST, "timeto", FILTER_SANITIZE_STRING)); 
    $payment = trim(filter_input(INPUT_POST, "payment", FILTER_SANITIZE_STRING)); 


    if ($name === "" || $email === "" || $adress === "" || $date === "" || $timefrom === "" || $timeto === "" || $payment === "") { 
     echo "Please fill in all fields"; 
     exit; 
    } 

    require('phpmailer/class.phpmailer.php'); 

    $mail = new PHPMailer; 

    if (!$mail->ValidateAdress($email)) { 
     echo "Invalid Email Adress"; 
     exit; 
    } 

    $email_body = ""; 
    $email_body .= "Name: " . $name . "\n"; 
    $email_body .= "Email: " . $email . "\n"; 
    $email_body .= "Adress: " . $adress . "\n"; 
    $email_body .= "Date: " . $date . "\n"; 
    $email_body .= "Time from: " . $timefrom . "\n"; 
    $email_body .= "Time to: " . $timeto . "\n"; 
    $email_body .= "Payment Method: " . $payment . "\n"; 


    // PHP MAILER CODE: 
    $mail->setFrom($email, $name); 
    $mail->addAddress('[email protected]', 'Soreal main account');  // Add a recipient 

    $mail->isHTML(false);         // Set email format to HTML 

    $mail->Subject = 'Soreal VR Contact Form' . $name; 
    $mail->Body = $email_body; 


    if (!$mail->send()) { 
     echo 'Message could not be sent.'; 
     echo 'Mailer Error: ' . $mail->ErrorInfo; 
     exit; 
    } 

    header("location:thankyou.php"); 

} 

?> 

エラー:

Fatal error: Call to undefined method PHPMailer::ValidateAdress() in /home/soreal/public_html/process.php on line 23 

エラーは以下のIF文の行で発生している:

$mail = new PHPMailer; 

    if (!$mail->ValidateAdress($email)) { 
     echo "Invalid Email Adress"; 
     exit; 
    } 

私はrequireからincludeに変更しようとしました。私はPHPMailerAutoload.phpファイルも含めて試しました。

助けていただければ幸いです。

+0

を使用 – dinesh

+0

誤植の質問がオフトピックですスペルを確認してくださいvalidateAddress'。 –

答えて

1

機能のスペルを確認してください。それは に動作しない場合は、 `

$valid = phpMailer::ValidateAddress($email_address); 
+0

質問に誤字をマーク/フラグを付けるだけです。それは話題です。 –

+0

どこにコードを挿入しますか? –

+1

ここに:if(!$ mail-> ValidateAdress($ email)){ echo "無効なメールアドレス"; exit; } – madankundu

関連する問題