کتاب آموزش برنامه نویسی Ext JS
برای اولین بار در ایران
Ext JS
در مورد Ext JS بیشتر بدانید
خرید کتاب
آنچه که باید از فریم ورک لاراول بدانید
دسته بندی ها :فریم ورک Laravel , فریم ورک php
۲۲ دی ۱۳۹۳
526 بازدید

اعتبارسنجی آسان

تقریبا هر وب اپلیکیشنی نیاز به فرم هایی برای اعتبارسنجی (authentication) دارد. فریم ورک Laravel (لاراول) رابطی ساده و کاربردی برای اعتبارسنجی کاربران ارائه می دهد.

ابتدا با ایجاد یک جدول users شروع کنید که فیلد های لازم برای  username و password  را داشته باشد.

سپس فریم ورک Laravel می تواند برای لاگین کردن یک کاربر attempt کند- که احتمالا این لاگین بر اساس مقادیری باشد که کاربر در فرم وارد کرده است.

در اینجا یک مثال ساده داریم، منهای جنبه ی validation.

[codesyntax lang=”php”]

Route::post('login', function()
{
    $credentials = array(
        'username' => Input::get('username'),
        'password' => Input::get('password')
    );
 
    // perform validation
 
    if ( Auth::attempt($credentials) )
    {
        // Credentials match. Logged in!
        return Redirect::to('admin/profile');
    }
});

[/codesyntax]

به یاد داشته باشید که فریم ورک Laravel در پشت صحنه به صورت خودکار پسورد را مخلوط کرده و آن با آنچه که در جدول users ذخیره شده است مقایسه می کند.

با این فرض که اطلاعات کاربر مطابقت داشته باشد، ID کاربر در session ذخیره می شود و کاربر لاگین می کند. بر اساس درخواست های بعدی شما می توانید با استفاده از کد زیر یوزرنیم کاربری که لاگین کرده است را به دست آورید:

[codesyntax lang=”php”]

$user = Auth::user()->username;

[/codesyntax]

ارسال ایمیل

همانطور که می دانید ارسال ایمیل از اپلیکیشن تان همواره پیچیده تر از آن است که به نظر می رسد. اما در فریم ورک Laravel 4 اینگونه نیست.

توانایی ارسال ایمیل این فریم ورک بر پایه ی بسته ی محبوب SwiftMailer ساخته شده است، اکنون شما نیاز به یک فایل config/mail.php جدید در اپلیکیشن خود دارید. اینجاست که می توانید اطلاعات ضروری برای email provider خود را شناسایی کنید. در اینجا نسخه ی مختصری از آنچه که به دست می آورید آمده است:

[codesyntax lang=”php”]

<?php
// app/config/mail.php
 
return array(
    'host' => 'smtp.example.com',
    'port' => 2525,
    'from' => array('address' => null, 'name' => null),
    'encryption' => 'tls',
    'username' => null,
    'password' => null,
);

[/codesyntax]

فقط کافیست مقادیر بالا را با آنچه که مربوط به ایمیل سرور خودتان است جایگزین کنید.

سپس نیاز به یک view برای ایمیل داریم. میخواهیم یک view ایجاد کنیم که welcome.blade.php  نامیده می شود و هنگامی که یک کاربر جدید در وب سایت ما ثبت نام کند، به کار خواهد رفت:

[codesyntax lang=”php”]

<?php
// app/views/emails/welcome.blade.php
 
<html>
    <body>
        Hi there, {{ $user->name }}. Thanks again for signing up for the latest Schumacher news! We'll look forward to seeing you around.
 
        Thanks,
        Management
    </body>
</html>

[/codesyntax]

وقتی که همه چیز در جای خود قرار گرفت، مسیر (rout) نمونه را ایجاد کرده و ایمیل خود را ارسال می کنیم.

[codesyntax lang=”php”]

Route::get('/', function()
{
    $user = User::find(1);
    $data = [ 'user' => $user ];
 
    // email view, data for view, closure to send email
    Mail::send('emails/welcome', $data, function($message) use($user)
    {
        $message
            ->to($user->email)
            ->subject('Welcome Bieber Fan!')
            ->attach('images/bieberPhoto.jpg');
    });
 
    return 'Welcome email sent!';
});

[/codesyntax]

خیلی ساده بود نه؟ ما کاربر جدید را از آن جدول به دست می آوریم و یک ایمیل را به آدرس ایمیل آن کاربر ارسال می کنیم. با تشکر از کارایی SwiftMailer، اجرای عملیات نسبتا پیچیده مانند الصاق فایل تبدیل به کار ساده ای شده است. حال هر عضو جدید به محض ثبت نام یک عکس از شوماخر دریافت می کند.

 




نظراتتان را با ما در میان بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *