如何使用PHPmailer获取gmail帐户上的电子邮件

如何使用PHPmailer获取gmail帐户上的电子邮件,php,gmail,phpmailer,Php,Gmail,Phpmailer,我对这个领域真的很陌生。我正在做我的投资组合。我已经为“联系我”制作了模式联系表单(引导)。我没有收到来自php的gmail帐户上的邮件。我正在使用PHP mailer,下面是我的PHP代码,文件名为contact form.PHP: <?php // check for form submission - if it doesn't exist then send back to contact form** if (!isset($_POST['submit'])) { $mess

我对这个领域真的很陌生。我正在做我的投资组合。我已经为“联系我”制作了模式联系表单(引导)。我没有收到来自php的gmail帐户上的邮件。我正在使用PHP mailer,下面是我的PHP代码,文件名为contact form.PHP

<?php

// check for form submission - if it doesn't exist then send back to contact form**
if (!isset($_POST['submit'])) {

$message=
    'Name:  '.$_POST['name'].'<br />
    Email:  '.$_POST['email'].'<br />
    Message:    '.$_POST['contact-message'];
require "phpmailer/class.phpmailer.php"; //include phpmailer class

// Instantiate Class
$mail = new PHPMailer();

// Set up SMTP
$mail->IsSMTP();    // Set up SMTP connection
$mail->SMTPAuth = true;     // Connection with SMTP does require authorization
$mail->SMTPSecure = "ssl";      // Connect using a TLS connection
$mail->Host ="smtp.gmail.com"; //Gmail SMTP address
$mail->Port = 465; // Gmail SMTP port No idea what this is suppose to be
$mail->Encoding ='7bit';

$mail->Username = "mygmailid@gmail.com";  // Gmail address
$mail->Password ="Password";  // Gmail Password

// Compose
$mail->SetFrom($_POST['email'],$_POST['name']);
$mail->AddReplyTo($_POST['email'],$_POST['name']);
$mail->Subject = "Mail from Portfolio";
$mail->MsgHTML($message);

//Send To
$mail->AddAddress("recipientmail@gmail.com", "Recipient Name");
$result = $mail->Send();
$message = $result ? 'Successfully Sent!' : 'Sending Failed';
unset($mail);

}

我非常感谢您迄今为止应用的代码,因为调试代码很困难,如果您使用静态信息测试代码会更好,
我在下面给出了一个工作示例:

    $email = new PHPMailer();
    $email->From      = 'amrinder.salentro@gmail.com';
    $email->FromName  = 'Amrinder Singh';
    $email->Subject   = 'Hello';
    $email->Body      = "How are you karan";
    $email->AddAddress( 'amrinder.salentro@gmail.com' );
    $email->AddAttachment( 'PATH_OF_YOUR_FILE_HERE' , 'NameOfFile.pdf' );   //optional 
    return $email->Send();
我希望它能帮助你。请随它去。。。
谢谢……:)

首先,我建议您重新开始使用gmail发送,并确保您使用的是最新的PHPMailer。至于您的脚本,这一行意味着您的邮件处理代码只有在表单未提交时才会运行,因为这将导致发送错误,而您没有显示这些错误,所以您不会看到任何情况发生

if (!isset($_POST['submit'])) { 
这应该是:

if (isset($_POST['submit'])) {

你能做一些调试输出来验证数据是否传输到这个表单吗?正如我说的,我是这个领域的新手,你能详细说明你的问题吗?谢谢,我看了下面的视频,例如,在
if(!isset($\u POST['submit'])中添加一些
echo“something”
){
条件,以便您知道是否执行了代码。然后检查
$message
变量的内容是否成功。我已经应用了它,但它对我不起作用。可能是我遗漏了什么。我是否必须在gmail帐户设置中添加POP服务器@Insomnia@Synchro问题是通过gmail帐户“不”到gmail帐户“。请再读一遍。。OP的代码正在通过gmail帐户和发送到gmail帐户。谢谢@Synchro我会处理您的建议并让您知道。我已经尝试了您提供的GitHUb解决方案。幸运的是,它正在工作,但它给了我以下错误:无法发送邮件。邮件错误:SMTP connect()失败。这意味着什么???你需要。
if (isset($_POST['submit'])) {