Tài liệu hướng dẫn tự học lập trình website bằng ngôn ngữ PHP Laravel Framework. Hướng dẫn học lập trình LARAVEL chi tiết từ A đến Z. Giúp bạn tự học ngôn ngữ lập trình PHP và Laravel framework một cách tốt hơn.
Trang 1GIÁO TRÌNH LARAVEL - BUỔI 7
php artisan make:reuest LoginRequest
3 Làm việc với file Request
a cho phép sử dụng Request ở bên ngoài
public function authorize(){
return true;
}
Mặc định return flase, để sử dụng được ở bên ngoài ta chuyển thành true
b Sử dụng rules
tương tự như Validator
public function rules()
{
Trang 2c Thay đổi lại câu thông báo mặc định
tạo thêm 1 function messages
public function messages()
{
return [
‘user.required’=>’user không được để trống’,
‘pass.required’=> ‘pass không được để trống’ ];
}
4 In ra thông báo lỗi
a lấy ra tất cả thông báo lỗi
Cú pháp:
Trang 42 Khai báo Responses
Trang 6Lưu ý: thời gian tính bằng phút
c Chuyển hướng tới Route
Route::get('response/demo',['as'=> 'repon', function(){
return view('login');
}]);
Route::get('redirect', function (){
return redirect()->route('repon');
});//truyền theo tham số
return redirect()->route('repon', ['id' => 1]);
d Chuyển hướng với with()
Trang 7return back()->with([‘message’=>’đây là khóa học laravel’]);
Nhận thông báo ở view
Thêm value ở view
<input type=”text” name=”user” value=”{{old(‘user’)}}” />
e Chuyển hướng với withErrors
$message[] = ‘đây là message thông báo’;
Return back()->withErrors($message);
@if(count($errors))
@foreach($errors->all() as $error)
{{$error}}
Trang 9* Register the application services
c thêm caps cho macro
public function boot()
1 Xây dựng ứng dụng Login có các trường được Validate như sau:
Tài khoản & Mật khẩu không được để trống
Tài khoản phải là Email
Mật khẩu phải từ 6 ký tự
Trang 10 Tạo thêm 1 dữ liệu trong CSDL, kiểm tra nếu đúng trong CSDL chuyển hướng trang admin
Chú ý: Sử dụng tạo request và response riêng để làm bài này
Trang 11GIÁO TRÌNH LARAVEL - BUỔI 8
3 Tùy biến với Auth
a Cấu hình cho Auth
Cách 1:
- chúng ta sử dụng model user (app/user.php)
- vì tên bảng mặc định là users, vậy để thay đổi chúng ta làm như sau:
protected $table = ‘$table_name’;
ví dụ:
protected $table = ‘vp_user’;
Vậy là mình đã thay đổi tên bảng thành vp_user
- thay đổi lại cột model
+ mặc định trong model user có:
protected $fillable = [
Trang 12'name', 'email', 'password',
Mặc định return flase, để sử dụng được ở bên ngoài ta chuyển thành true
b Kiểm tra sự tồn tại (trong CSDL)
Cú pháp:
Auth:: attempt([ name=>value ]);
Ví dụ:
Trang 13Auth:: attempt([ ‘username’=>’vietpro’ ]);
c Kiểm tra đã đăng nhập
Trang 15- Tạo bảng bằng migration vp_user ( id, username, passoword, level )
- Thêm dữ liệu mẫu bằng seed ( username = admin, password = 123456, level = 1 )
- Kiểm tra trường trống bằng Validator
- Nếu người dùng đăng nhập đúng thì chuyển vào trang Admin và nếu sai thì báo lỗi
- Tạo trang logout khi người dùng lick vào logout thì chuyển về trang login
Trang 16GIÁO TRÌNH LARAVEL - BUỔI 9
Storage::disk('local')->put(demo.txt', 'đây là nội dung file demo.txt');
File lưu trữ ở (storage/app)
c tạo folder, file và ghi nội dung vào file
use Storage;
Storage::put('avatars/1', $fileContents);
Ví dụ
Trang 17Storage::put('avatars/1.txt', 'noi dung file 1.txt');
c Lấy ra nội dung của File
Storage::prepend('demo.txt', 'Prepended Text');
g Thêm nội dung vào cuối File
use Storage;
Storage::append('file.log', 'Appended Text');
Trang 18h Copy và move file
Trang 19$array = ['products' => ['desk' => ['price' => 100]]];
array_forget($array, 'products.desk');
array_get()
$array = ['products' => ['desk' => ['price' => 100]]];
$value = array_get($array, 'products.desk');
Trang 20Lưu ý: https://www.google.com/settings/security/lesssecureapps
IV Tích hợp Class
1 composer.json