https://github.com/mp3063/laravel_mail_activation
Easy Laravel Auth with mail activation package
https://github.com/mp3063/laravel_mail_activation
authentication laravel mail package php
Last synced: 5 months ago
JSON representation
Easy Laravel Auth with mail activation package
- Host: GitHub
- URL: https://github.com/mp3063/laravel_mail_activation
- Owner: mp3063
- Created: 2015-11-08T21:05:07.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2017-05-04T06:55:19.000Z (about 9 years ago)
- Last Synced: 2024-12-17T10:06:55.795Z (over 1 year ago)
- Topics: authentication, laravel, mail, package, php
- Language: PHP
- Homepage:
- Size: 2.52 MB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
## Easy Laravel 5.5 Auth with mail activation
##### For Laravel 5.4 use version 5.4.2
### Preparations
In .env file add your credentials, for example:
```php
DB_HOST=localhost
DB_DATABASE=test_mail_activation
DB_USERNAME=root
DB_PASSWORD=
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=your_username
MAIL_PASSWORD=your_password
MAIL_ENCRYPTION=null
```
In config/mail.php add your mail and name:
```php
'from' => ['address' => 'yourmail@123.com', 'name' => 'Your Name'],
```
In app/User.php file(MODEL) to $fillable array add two more columns to look like this:
```php
protected $fillable = [ 'name', 'email', 'password', 'code', 'active' ];
```
These will install all necessary views into Resource folder. Run artisan command:
```bash
php artisan make:auth
```
Make shure to erase following line from routes/web.php or just comment it out because routes.php file from package will take place on all routes needed for auth. It's basically same file from Laravel ( changed 3 route to override Laravel methods ):
```php
Auth::routes();
```
Your routes/web.php file should look like this:
```php
This will copy migration file in database/migrations, and activate.blade.php in resources/emails/auth
Run:
```bash
php artisan migrate
```
#####If your application are running MySQL v5.7.7 and higher you do not need to do next step. If you hit this error:
```php
[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))
```
#####You need to do this in AppServiceProvider.php file and inside the boot method set a default string length:
```php
use Illuminate\Support\Facades\Schema;
public function boot()
{
Schema::defaultStringLength(191);
}
```
## End
If you done all this steps you should have all views and routes ready for mail-activation! Just start your server and enjoj! All functionality and routes made by Laravel are preserved!