php
1//login.blade.php 2 3<!DOCTYPE html> 4<html lang="ja"> 5 <head> 6 <meta charset="utf-8"> 7 <title>ログインページ</title> 8 </head> 9 <body> 10<h1>ログイン</h1> 11<form class="" action="{{url('/user_top_page')}}" method="post"> 12<label for="name">ニックネーム:</label> 13<input type="text" name="user_name" id="name"> 14<label for="pass">パスワード:</label> 15<input type="password" name="password" id="pass"> 16<button type="button" name="button">ログイン</button> 17</form> 18<form class="" action="{{url('/create_user')}}" method="get"> 19<button type="submit" name="button">新規ユーザ作成</button> 20</form> 21 </body> 22</html> 23 24
php
1 2<?php 3 4use Illuminate\Support\Facades\Route; 5 6/* 7|-------------------------------------------------------------------------- 8| Web Routes 9|-------------------------------------------------------------------------- 10| 11| Here is where you can register web routes for your application. These 12| routes are loaded by the RouteServiceProvider within a group which 13| contains the "web" middleware group. Now create something great! 14| 15*/ 16 17 18 19Route::post('/user_top_page', 'UserController@user_top_page'); 20 21 22 23
php
1//UserController.php 2<?php 3 4namespace App\Http\Controllers; 5 6use Illuminate\Http\Request; 7use App\User; 8use App\Http\Requests\UserRequest; 9 10 11 12 13 14class UserController extends Controller 15 16{ 17 // 18 public function create(){ 19 20 return view('user.create_user'); 21 } 22 23 24 public function create_user(UserRequest $request){ 25 26 $user = new User(); 27 $user->user_name = $request->user_name; 28 $user->password = $request->password; 29 $user->profile = $request->profile; 30 $user->save(); 31 return redirect('/login'); 32 } 33 34public function user_top_page(UserRequest $request){ 35 36} 37} 38
php
1 2//User.php 3<?php 4 5namespace App; 6 7use Illuminate\Database\Eloquent\Model; 8 9class User extends Model 10{ 11 // 12 protected $fillable = ['user_name', 'password', 'profile']; 13 14public function login_check($user_name, $password){ 15 16$result = DB::table('users')->where('user_nme', $user_name)->where('password', $password); 17} 18 19 20} 21
現在,laravelの学習でコードを書き始めたばかりで初歩的な質問となると思いますが、すみません。
laravel(フレームワーク)には、ログインに関する機能はあると思うのですが、勉強のためにデータベースからのデータの取得など自分で書いてみたいので、上記のコードで書いてみようとしています。
質問点ですが、
1、ログインしたいユーザからユーザ名やパスワードを受け取り
それを、Controllerの方で データベースからデータを持ってきて、入力されたデータと一致するものがあるかを判定するのか、
もしくは、Model で login_check などのメソッドを作成してそのメソッドをcontrollerから呼び出してチェックするのかどちらがいいのでしょうか?
もしくは、もっとこうやった方がいいなどあったらアドバイスいただけたらと思います。
2,データベースからデータを取得する場合(条件)
$name = DB::table('users')->where('name', 'taro');
上記のような書き方で良いのでしょうか?
&&などの条件の場合 や データがないときの戻り値は何になるのでしょうか?
Laravel Framework 7.1.3ですが、 リファレンスするものが あまり見つけきれなかったのでアドバイスいただけると幸いです。
sqlite 3.28.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/24 13:58