laravelを用いて簡易的な新規登録画面、ログイン画面を作成しました。
新規登録とデータベースへの反映はできるのですが、メールアドレスとパスワードを入力してログインしようとするとし、ログインすることが出来ません。
どうかよろしくお願いします
以下がソースコードです
namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Auth; use App\Person; class HelloController extends Controller { public function getAuth(Request $request) { $param = ['message' => 'ログインしてください']; return view('auth.login', $param); } public function postAuth(Request $request) { $mail = $request->mail; $password = $request->password; if(Auth::attempt(['mail' => $mail, 'password' => $password])) { $msg = 'ログインしました (' . Auth::user()->name . ')'; } else { $msg = 'ログインに失敗しました '; } return view('auth.login', ['message' => $msg]); } public function index(Request $request) { $user = Auth::user(); $sort = $request->sort; $items = Person::orderBy($sort, 'asc') ->simplePaginate(5); $param = ['items' => $items, 'sort' => $sort, 'user' => $user,]; return view('hello.index', $param); } public function post(Request $request) { $items = DB::select('select * from people'); return view('hello.index', ['items' => $items]); } public function add(Request $request) { return view('hello.add'); } public function create(Request $request) { $param = [ 'name' => $request->name, 'mail' => $request->mail, 'age' => $request->age, 'subscribe' => $request->subscribe, 'password' => $request->password, ]; DB::table('people')->insert($param); return redirect('/index'); } }
/* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | Here is where you can register web routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | contains the "web" middleware group. Now create something great! | */ Route::get('index', 'HelloController@index'); //->middleware('auth'); Route::post('laravelapp/public/index', 'HelloController@post'); Route::get('/add', 'HelloController@add'); Route::post('/index', 'HelloController@create'); //Route::get('/finish', function(){ // return '<html><body><h1>ログインしました</h1></body></html>'; //}); Route::get('person', 'PersonController@index'); Route::get('/', function () { return view('welcome'); }); Auth::routes(); Route::get('login', 'HelloController@getAuth'); Route::post('login', 'HelloController@postAuth'); Route::get('/home', 'HomeController@index')->name('home');
@section('title', '新規登録') @section('menuber') @parent 新規登録 @endsection @section('content') <table> <form action ="index" method = "post"> {{ csrf_field() }} <tr><th>name: </th><td><input type="text" name="name"></td></tr> <tr><th>mail: </th><td><input type="text" name="mail"></td></tr> <tr><th>age: </th><td><input type="text" name="age"></td></tr> <tr><th>subscribe: </th><td><input type="text" name="subscribe"></td></tr> <tr><th>password: </th><td><input type="password" name="password"></td></tr> <tr><th></th><td><input type="submit" value="登録"></td></tr> </form> </table> @endsection @section('footer') copyright 2018 yuya @endsection
@section('title', '会員登録ページ') @section('menuber') @parent メニュー @endsection @section('content') @if (Auth::check()) <p>USER: {{ $user -> name . ' (' . $user -> email . ')' }}</p> @else <p>登録が完了しました (<a href = "/laravelapp/public/login">ログイン</a></p> @endif {{-- <table> <tr><th>Name</th><th>Mail</th><th>Age</th><tr> @foreach ($items as $item) <tr> <td>{{ $item->name }}</td> <td>{{ $item->mail }}</td> <td>{{ $item->age }}</td> <td>{{ $item->subscribe }}</td> <td>{{ $item->password }}</td> </tr> @endforeach </table>--}} @endsection @section('footer') copyright 2018 yuya. @endsection
@section('title', 'login') @section('menuber') @parent ログイン画面 @endsection @section('content') <p>{{ $message }}</p> <table> <form action="login" method="post"> {{ csrf_field() }} <tr><th>mail: </th><td><input type="text" name="mail"></td></tr> <tr><th>password: </th><td><input type="password" name="password"></td></tr> <tr><th></th><td><input type="submit" value="send"></td></tr> </form> </table> @endsection @section('footer') copyright 2018 yuya. @endsection
回答2件
あなたの回答
tips
プレビュー