2017-03-03 2 views
0

내가 등록하고 내 loginform와 함께 계정 해결할 수의 확인이 날이 오류주는 이메일을 보낼 생각 : 나는 라인 1479에 있었는지 고개를오류 PHPmailer

Fatal error: Uncaught Error: Class 'SMTP' not found in C:\xampp\htdocs\login\mailer\class.phpmailer.php:1479 
Stack trace: 
#0 C:\xampp\htdocs\login\mailer\class.phpmailer.php(1562): PHPMailer->getSMTPInstance() 
#1 C:\xampp\htdocs\login\mailer\class.phpmailer.php(1499): PHPMailer->smtpConnect(Array) 
#2 C:\xampp\htdocs\login\mailer\class.phpmailer.php(1336): PHPMailer->smtpSend('Date: Fri, 3 Ma...', 'This is a multi...') 
#3 C:\xampp\htdocs\login\mailer\class.phpmailer.php(1214): PHPMailer->postSend() 
#4 C:\xampp\htdocs\login\class.user.php(106): PHPMailer->send() 
#5 C:\xampp\htdocs\login\signup.php(43): USER->send_mail('[email protected]', 'Hello Rainier, ...', 'Confirm Registr...') 
#6 {main} thrown in C:\xampp\htdocs\login\mailer\class.phpmailer.php on line 1479 

를 그리고이 있었다 :

if (!is_object($this->smtp)) { 
     $this->smtp = new SMTP; 
    } 

오류가 무엇인지 알 수 없습니다. 나는 새로운이에요. 너희들이 날 도와 줄 수있어?

+0

을 : 당신은 명시 적으로 class.smtp.php 파일 (당신이 필요로하는 파일있는 정보에 대한 README를 읽어)를 포함, 또는 같이, 작곡가 또는 공급 오토로더를 사용하는 권장 방법을 사용하거나 필요 코딩을 보여줄 필요가 있습니다. 그 외 ... 당신을 도울 방법이 없습니다 –

+1

아마 오토로더를 포함하지 않을 것입니다. https://github.com/PHPMailer/PHPMailer/issues/113 – chocochaos

+0

github 문제는 고통 스러웠습니다. – Synchro

답변

0

는 PHPMailer는 작곡가, 많은 프레임 워크와 호환성이 더 있도록이 클래스를로드하는 방식, 그리고 PHP 변경 PSR-0 자동 로딩 표준. PHP 5.0을 지원하기 때문에 최신 PSR-4 표준을 지원할 수 없으며 네임 스페이스를 사용할 수도 없습니다. 이전에는 PHPMailer가 SMTP 클래스를 명시 적으로로드 했으므로 자체 구현을 제공하려는 경우 문제가 발생합니다. 당신은이 일을 오래된 스크립트를 보았다 수

require 'class.phpmailer.php'; 

만 그렇게 할 경우 클래스 'SMTP'을 (를) 찾을 수 없습니다 오류 실패합니다 보내는 SMTP. 정말

require 'PHPMailerAutoload.php'; 
-1

모든 프로젝트 파일을 다운로드했는지 확인하십시오. SMTP 클래스 코드는 this 파일의 PHPMailer 프로젝트에 정의됩니다.

작곡가와 함께 PHPMailer를 다운로드 한 경우 require_once 'vendor/autoload.php과 같은 라인이 있는지 확인하십시오. 그렇지 않으면 PHPMailer 클래스를 사용하기 전에 require_once 'mailer/PHPMailerAutoload.php과 같은 행이 있는지 확인하십시오.

그리 오래 전에 documentation

사용 PHPMailer 자신의 자동 로더 당으로

+1

"그렇지 않으면 PHPMailer 클래스를 사용하기 전에 require_once 'mailer/PHPMailerAutoload.php'와 같은 행이 있는지 확인하십시오." > 분명히 문제가되는 phpmailer 클래스 자체가 포함되어 있지는 않지만 SMTP 클래스를 인스턴스화 할 때 오류가 발생합니다. 그는 작곡가 또는 phpmailer의 autloader를 포함시켜야합니다. – chocochaos

+0

이것은 "PHPMailer 클래스를 사용하기 전에 require_once 'mailer/PHPMailerAutoload.php와 같은 라인이 있는지 확인하십시오." –

+0

아 맞습니다. 내 잘못, 내가 잘못 읽고있어 ... – chocochaos