2014-04-16 1 views
1

나는 imap-php를 통해 gmail에 연결하기위한 간단한 3 행 코드를 작성했다. 000webhost를 사용하여 실행 중입니다. 하지만 열려고 할 때로드가 계속되고 Gmail 서버가 응답하지 않는 것처럼 "문제가 페이지를로드하는 중"또는 "데이터를 수신하지 못함"이 표시됩니다. 제안 사항에 어떤 문제가 있습니까?imap을 통해 연결하는 동안 gmail이 응답하지 않습니까?

$hostname = "{imap.gmail.com:993/imap/ssl/novalidate-cert/norsh}Inbox"; 
$username = '[email protected]'; 
$password = "abc123"; 

$inbox = imap_open($hostname,$username,$password)or die('Cannot connect to Gmail: ' . imap_last_error()); 
+2

이 세 줄은 ... 표시합니다. – reto

+0

왜'$ hostname'을 그렇게 설정합니까? '{imap.gmail.com:993}받은 편지함 충분하지 않습니까? 대소 문자를 구분하는지 확인하십시오. – phoops

+0

나는 근래에 많은 조합을 시도했지만 그들 중 누구도 일하고 ​​있지 않다 !! 나는 진짜로 지쳤다! – user3540802

답변

0

이 시도 :

$hostname = "{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX"; 
$username = '[email protected]'; 
$password = "abc123"; 

$inbox = imap_open($hostname,$username,$password)or die('Cannot connect to Gmail: ' .  imap_errors()); 

은 또한 당신의 Gmail 설정을 통해 계정에 대한 당신이 IMAP를 활성화해야합니다.

+0

작동하지 않습니다. 어느 경우에도 오류가 표시되지 않고 계속로드됩니다. – user3540802

+0

GMail 설정에서 계정에 대해 IMAP을 사용할 수 있습니까? – phoops

+0

예 .. 썬더 버드를 통해 내 메일에 액세스 할 수 있지만이 방법으로로드를 계속합니다. PHP 설정으로 무언가해야합니까 ?? – user3540802

3
$server_name = "imap.gmail.com"; 
$account_name = "[email protected]"; 
$account_pwd = "my_account_password"; 

$inbox = imap_open("{".$server_name.":993/imap/ssl/novalidate-cert}INBOX", 
$account_name, $account_pwd) OR error_imap_mail("Unable To Open Imap 
Connection","Imap Failure",imap_errors()); 

function error_imap_mail($subject,$messagetext,$errors) { 
    global $report_email; 
    $mailfrom = "[email protected]"; 
    $mailsubject = "$subject"; 
    $mailbody = "$messagetext\n\n"; 
    if (count($errors) >0) { 
     if (substr($errors[0],0,8) <> "[IN-USE]") { 
      array_reverse($errors); 
      foreach ($errors as $key=>$value) { 
       $mailbody .= "\nErr No.".$key." Error:".$value; 
      } 
      foreach ($report_email as $value) { 
       mail($value, $mailsubject, $mailbody, "From: $mailfrom"); 
      } 
     }#if (substr($err_array[0],0,8) <> "[IN-USE]") { 
    }#if (count($errors) >0) { 
    exit; 
} 

연결에 실패하면 스크립트에서 오류를 보내도록하십시오.

Gmail의 계정 설정에서 IMAP을 사용 설정 했습니까?

관련 문제