API Mailgun работает только с одним электронным письмом


Я создаю форму подписки по электронной почте с помощью PHP и API Mailgun, но я получаю электронное письмо только на свой основной адрес электронной почты, который я использовал для создания учетной записи на mailgun.com . Когда я заполняю форму этим письмом, я получаю письмо с подтверждением, но оно не работает с другими электронными письмами. Почему это так? Это код:

Инициализированный файл:

<?php
require_once 'vendor/autoload.php';

define('MAILGUN_KEY', 'key-2ce40f5e23c90b0d666f3e....');
define('MAILGUN_PUBKEY', 'pubkey-8cf7125996....');

define('MAILGUN_DOMAIN', 'sandboxc03eaee7674c4a9094ffa8d61845ddf5.mailgun.org');
define('MAILING_LIST', '[email protected]');
define('MAILGUN_SECRET', '...');

$mailgun = new Mailgun\Mailgun(MAILGUN_KEY);
$mailgunValidate = new Mailgun\Mailgun(MAILGUN_PUBKEY);
$mailgunOptIn = $mailgun->OptInHandler();
 ?>

Главная index.php файл:

<?php
require_once 'init.php';


if(isset($_POST['name'], $_POST['email']))
{
    $name = $_POST['name'];
    $email = $_POST['email'];

    $validate = $mailgunValidate->get('address/validate', [
        'address' => $email
    ])->http_response_body;

    if($validate->is_valid)
    {
        $hash = $mailgunOptIn->generateHash(MAILING_LIST, MAILGUN_SECRET, $email);

        $mailgun->sendMessage(MAILGUN_DOMAIN, [
            'from'      => '[email protected]',
            'to'            => $email,
            'subject'   => 'Please confirm your subscription to us',
            'html'      => "Hello {$name}<br><br>You signed up to our mailing list. Please confirm below"
        ]);

        $mailgun->post('lists/' . MAILING_LIST . '/members', [
            'name'              => $name,
            'address'               => $email,
            'subscribed'    => 'no'
        ]);

        header('Location: http://localhost:8888/exam/index.php');
    }

}
?>
Author: Limpuls, 2017-05-30

1 answers

Вы используете sandboxc03eaee7674c4a9094ffa8d61845ddf5.mailgun.org Поддомен песочницы для отправки электронной почты.

Вы должны получить сообщение об ошибке, например:

Error: Sandbox subdomains are for test purposes only. Please add your own domain or add the address to authorized recipients in Account Settings.

Чтобы отправить несколько электронных писем, вам сначала нужно создать свой собственный домен. Вы можете создать домен из здесь

Убедитесь, что ваш домен подтвержден.Если ваш домен не проверен, вы получите сообщение об ошибке, например:

Error: The domain is unverified and requires DNS configuration. Log in to your control panel to view required DNS records.

 2
Author: Nitin Vavdiya, 2017-06-03 09:19:03