質問編集履歴

2

「表示されてた時から、表示されなくなるまでの間に変更した内容」の追記

2020/07/02 04:33

投稿

qwertyuiop
qwertyuiop

スコア41

test CHANGED
File without changes
test CHANGED
@@ -36,6 +36,10 @@
36
36
 
37
37
 
38
38
 
39
+ なかなか直らない場合はプロジェクトを作り直そうと思います。
40
+
41
+
42
+
39
43
  ## ファイルなど
40
44
 
41
45
  何が問題なのか見当もつかないのですが、適当にファイルを載せておきます。
@@ -70,96 +74,6 @@
70
74
 
71
75
 
72
76
 
73
- ログインページのBladeファイル (ログインフォームのBlade)
74
-
75
- ```Blade
76
-
77
- @extends('layouts.app')
78
-
79
-
80
-
81
- @section('content')
82
-
83
- <form method="POST" class="login-form" action="{{ route('login') }}">
84
-
85
- @csrf
86
-
87
- <h1>{{ __('Login') }}</h1>
88
-
89
-
90
-
91
- <label class="login-form-input-label">
92
-
93
- <span>{{ __('Username') }}</span>
94
-
95
- <input id="username" type="text" class="form-control @error('username') is-invalid @enderror" name="username" value="{{ old('username') }}" required autocomplete="username" autofocus>
96
-
97
- </label>
98
-
99
- @error('username')
100
-
101
- <span class="invalid-feedback" role="alert">
102
-
103
- <strong>{{ $message }}</strong>
104
-
105
- </span>
106
-
107
- @enderror
108
-
109
-
110
-
111
- <label class="login-form-input-label">
112
-
113
- <span>{{ __('Password') }}</span>
114
-
115
- <input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password">
116
-
117
- </label>
118
-
119
- @error('password')
120
-
121
- <span class="invalid-feedback" role="alert">
122
-
123
- <strong>{{ $message }}</strong>
124
-
125
- </span>
126
-
127
- @enderror
128
-
129
-
130
-
131
- <label style="display: block; margin: 12px 0;">
132
-
133
- <input class="form-check-input" type="checkbox" name="remember" id="remember" {{ old('remember') ? 'checked' : '' }}>
134
-
135
- <span>{{ __('Remember Me') }}</span>
136
-
137
- </label>
138
-
139
-
140
-
141
- <div style="margin: 12px 0;">
142
-
143
- <button type="submit" class="btn btn-primary">{{ __('Login') }}</button>
144
-
145
- @if (Route::has('password.request'))
146
-
147
- <a href="{{ route('password.request') }}" style="margin-left: 4px;">{{ __('Forgot Your Password?') }}</a>
148
-
149
- @endif
150
-
151
- </div>
152
-
153
- </form>
154
-
155
- @endsection
156
-
157
-
158
-
159
- ```
160
-
161
-
162
-
163
77
  Controllerで使用する時の例 (投稿フォームのバリデーション)
164
78
 
165
79
  ```php
@@ -177,3 +91,151 @@
177
91
  ]);
178
92
 
179
93
  ```
94
+
95
+
96
+
97
+
98
+
99
+ ## 表示されてた時から、表示されなくなるまでの間に変更した内容
100
+
101
+ あまり覚えていないのですが、覚えてる範囲で書きます。
102
+
103
+ 暗号化しないクッキーの指定
104
+
105
+ `app/Http/Middleware/EncryptCookies.php`
106
+
107
+ ```php
108
+
109
+ protected $except = [
110
+
111
+ 'lang'
112
+
113
+ ];
114
+
115
+ ```
116
+
117
+ (元の`protected $except = [];`という状態にしても変わりなし)
118
+
119
+
120
+
121
+ ミドルウェアの作成
122
+
123
+ `app/Http/Middleware/Language.php`
124
+
125
+ ```php
126
+
127
+ <?php
128
+
129
+
130
+
131
+ namespace App\Http\Middleware;
132
+
133
+
134
+
135
+ use Closure;
136
+
137
+ use Illuminate\Support\Facades\Config;
138
+
139
+ use Illuminate\Support\Facades\App;
140
+
141
+ use Illuminate\Support\Facades\Session;
142
+
143
+ use Illuminate\Support\Facades\Cookie;
144
+
145
+
146
+
147
+ class Language
148
+
149
+ {
150
+
151
+ /**
152
+
153
+ * Handle an incoming request.
154
+
155
+ *
156
+
157
+ * @param \Illuminate\Http\Request $request
158
+
159
+ * @param \Closure $next
160
+
161
+ * @return mixed
162
+
163
+ */
164
+
165
+ public function handle($request, Closure $next)
166
+
167
+ {
168
+
169
+ // if (isset($request) && $request->isMethod('get') && isset($request->{'lang'})) {
170
+
171
+ // if (array_key_exists($request->{'lang'}, Config::get('languages'))) {
172
+
173
+ // Session::put('lang', $request->{'lang'});
174
+
175
+ // }
176
+
177
+ // }
178
+
179
+ //
180
+
181
+ // if (Session::has('lang') && array_key_exists(Session::get('lang'), Config::get('languages'))) {
182
+
183
+ // App::setLocale(Session::get('lang'));
184
+
185
+ // } else {
186
+
187
+ // Session::put('lang', Config::get('app.fallback_locale'));
188
+
189
+ // Cookie::queue(Cookie::forever('lang', Config::get('app.fallback_locale')));
190
+
191
+ // App::setLocale(Config::get('app.fallback_locale'));
192
+
193
+ // }
194
+
195
+
196
+
197
+ $langs = Config::get('languages');
198
+
199
+ if (isset($request) && $request->isMethod('get') && isset($request->{'lang'})) {
200
+
201
+ if (isset($langs[$request->{'lang'}])) {
202
+
203
+ Cookie::queue(Cookie::forever('lang', $request->{'lang'}));
204
+
205
+ App::setLocale($request->{'lang'});
206
+
207
+ return $next($request);
208
+
209
+ }
210
+
211
+ }
212
+
213
+
214
+
215
+ if (Cookie::has('lang') && isset($langs[Cookie::get('lang')])) {
216
+
217
+ App::setLocale(Cookie::get('lang'));
218
+
219
+ } else {
220
+
221
+ Cookie::queue(Cookie::forever('lang', Config::get('app.fallback_locale')));
222
+
223
+ App::setLocale(Config::get('app.fallback_locale'));
224
+
225
+ }
226
+
227
+
228
+
229
+ return $next($request);
230
+
231
+ }
232
+
233
+ }
234
+
235
+
236
+
237
+ ```
238
+
239
+
240
+
241
+ (app/Http/Kernel.phpの$middlewareから消してみても変わりなし)

1

$error変数に関する追記

2020/07/02 04:33

投稿

qwertyuiop
qwertyuiop

スコア41

test CHANGED
File without changes
test CHANGED
@@ -12,11 +12,17 @@
12
12
 
13
13
 
14
14
 
15
- 現在、バリデーションに当てはまら書き方をしても、エラーメッセージが表示されず、old関数も効かない状態です。
15
+ 現在、不正な書き方をしても、エラーメッセージが表示されず、old関数も効かない状態です。
16
16
 
17
- バリデーションに当てはまる書き方だと通るので、チェック自体は通っていると思いますが、Bladeファイル側で認識されていません。
17
+ バリデーションに当てはまるようにと通るので、チェック自体はしっかり通っていると思いますが、Bladeファイル側で認識されていません。
18
18
 
19
19
  どのページでもこのような問題が起きます。
20
+
21
+
22
+
23
+ blade内でvar_dumpしてみたら、$errorsは定義されていました。(object Illuminate\Support\ViewErrorBag)
24
+
25
+ ただ、不正な値を入力しても中身は空のままです。
20
26
 
21
27
 
22
28