امیررضا
3 سال پیش توسط امیررضا مطرح شد
1 پاسخ

laravel

توضیح تصویر رو وارد کنید

سلام خسته نباشید من میخواستم از ارسال ایمیل انحام یدم ولی نمیشه ذلیلش کجاس؟؟؟ممنونم


ثبت پرسش جدید
میلاد خسروی
تخصص : برنامه نویس بامزه
@milwad 3 سال پیش مطرح شد
0

سلام خسته نباشید
ببین اول باید توی سایت https://mailtrap.io ثبت نام کنی بعد از ثبت نام بری وارد پنل کاربری و تنظیمات زیر انجام یدی توی فایل .env

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=milwad.dev@gmail.com
MAIL_FROM_NAME="${APP_NAME}"

بعد این کار باید یک فایل mail درست کنی

php artisan make:mail MilwadMail

بعد توی فایل mail این تغییرات انجام بده

<?php

namespace App\Mail;

use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;

class MilwadMail extends Mailable
{
    use Queueable, SerializesModels;

    public $details;

    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct($details)
    {
        $this->details = $details;
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->subject('Milwad')->view('emails.milwad');
    }
}

درون فایل emails.milwad بیا این جیزا بنویس

<!DOCTYPE html>
<html>
<head>
    <title>MILWAD</title>
</head>
<body>
    <h1>{{ $details['title'] }}</h1>
    <p>{{ $details['body'] }}</p>

    <p>Thank you</p>
</body>
</html>

برای اینکه طولانی نشه یه روت درست میکنم دیگه controller من درست نکردم خودت میتونی درست کنی

Route::get('send-mail', function () {

    $details = [
        'title' => 'Milwad',
        'body' => 'This is for testing email using smtp'
    ];

    \Mail::to('your_receiver_email@gmail.com')->send(new \App\Mail\MilwadMail($details));

    dd("Email is Sent.");
});

بعدش تمام و میتونی راحت ارسال کنی
@amirrezaraadi021


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام