Soru Verilen posta kutusuna [], RFC 2822, 3.6.2'ye uygun değildir. e-posta bir değişkende olduğunda


Doğru bir e-posta adresim var. Ben bunu tekrarladım. ama gönderdiğimde, aşağıdaki hatayı alıyorum:

 Address in mailbox given [] does not comply with RFC 2822, 3.6.2. 

Niye ya? Ben e-posta göndermek için laravel (hızlı mailler) kullanın.

$ email = email@address.com

ve sonra gönderdiğimde, hata atılır.

Ama ben doğrudan string kullanırsam, gönderir.

İşte blok:

 Mail::send('emails.activation', $data, function($message){
            $message->to($email)->subject($subject);
        });
                ->with('title', "Registered Successfully.");

19
2018-02-03 14:59


Menşei


$email ve $subject kapsam dışındalar değil mi? - Anthony Sterling
Mail :: send çağrısından önce bunları tanımladım, ancak kapsam dışıysa, ne yapmalıyım?
kullanım use. Mail::send('emails.activation', $data, function($message) use ($email, $subject) { .... :) - Anthony Sterling
Tam bir kod ile cevaplar mısınız lütfen? ve başarı durumunda cevap olarak vurdum
Ayrıca, bazı zamanlar yanlış e-posta kimliği olduğunda aynı sorunla karşılaşılacak. (i.e. no where available abcd@abcd.abc). - bharat


Cevaplar:


E-posta değişkeniniz kapsam nedeniyle boş, aşağıdaki gibi bir kullanım deyimi ayarlamanız gerekir:

Mail::send('emails.activation', $data, function($message) use ($email) {
    $message->to($email)->subject($subject);
});

7
2018-06-04 15:23





(PHP'de SwiftMailer kullanıyorum)

Yanlışlıkla $ e-posta için bir dize gönderirken böyle bir hata alıyorum

$email = "someone@somewhere.com <Some One>";

Ne demek istediğimi yazarken

$email = Array("someone@somewhere.com"=>"Some One");

Yanlışlıkla kayıt için kullandığım bir stringify işleviyle çalıştırıyordum, bu yüzden diziyi tekrar göndermeye başladığımda hata giderdi.


3
2017-07-17 07:10





e-posta adres değişkeninizin boş olmadığından emin olun. kullanarak kontrol et

print_r ($ variable_passed);


2
2018-04-17 11:44





Aynı problemle karşı karşıya kaldım ve düzelttim. Lütfen bazı şeyleri yazılı olarak yazınız:

   Mail::send('emails.auth.activate', array('link'=> URL::route('account-activate', $code),'username'=>$user->username),function($message) use ($user) {
                        $message->to($user->email , $user->username)->subject('Active your account !');

                    });

Bu senin olmalı emails.activation

    Hello {{ $username }} , <br> <br> <br>

    We have created your account ! Awesome ! Please activate by clicking the   following link <br> <br> <br>
   ----- <br>
      {{ $link }} <br> <br> <br>
       ---- 

Posta gönderme işlevinize neden $ e-posta değişkeni diyemediğinizin cevabı. $ Kullanıcı değişkenini çağırmanız gerekiyor, ardından istediğiniz değişkeni $ user-> variable olarak yazabilirsiniz.

Teşekkür ederim :)


1
2017-12-11 19:56





Bunun nedeni, gönderilmekte olan e-posta adresinin boş olmasıdır. Boş parantezleri görüyor musun? Bu, e-posta adresinin swiftmailer işlevinin $ adresine konulmadığı anlamına gelir.


1
2017-12-16 11:38





Veri değişkenleri ($ e-posta, $ konu) global görünmektedir. Ve globals fonksiyonların içinde okunamaz. Onları parametre olarak (önerilen yol) geçirmeli veya global olarak beyan etmelisiniz.

Bu şekilde dene:

Mail::send('emails.activation', $data, function($message, $email, $subject){
        $message->to($email)->subject($subject);
    });
            ->with('title', "Registered Successfully.");

0
2018-02-03 16:47





Bu hata, $ e-posta değişkeni boş olduğunda veya bazen posta olmadığında, varolan bir postayı deneyin.


0
2018-04-24 03:29





Bunu dene.

Mail::send('emails.activation', $data, function($message) use($email,$subject){
            $message->to($email)->subject($subject);
        });
                ->with('title', "Registered Successfully.");

0
2017-10-09 10:47





 Mail::send('emails.activation', $data, function($message){
        $message->from('email@from', 'name');
        $message->to($email)->subject($subject);
    });

Nedenini bilmiyorum, ama benim durumumda bilginin işlevine koydum ve iyi çalışıyor.


0
2017-10-28 11:13





Bugün çok benzer bir problemim vardı ve çözüm olduğu gibi oldu.

$email = Array("Zaffar Saffee" => "myemail@gmail.com");
        $schedule->command('cmd:mycmd')
                 ->everyMinute()
                 ->sendOutputTo("/home/forge/dev.mysite.com/storage/logs/cron.log")
                 ->emailWrittenOutputTo($email);

Bu laravel 5.2 olsa da ...

temel sorunum, dizinin yerine dizgeyi geçiyordum, hata oldu

->emailWrittenOutputTo('mymail@gmail.com'); // string, we need an array

0
2017-08-14 21:44