Compare commits

...

2 Commits

Author SHA1 Message Date
c2332743a4 Merge pull request 'ユーザー情報変更画面修正 - 本人確認書類アップロード処理' (#5) from main_higashide into main
All checks were successful
Deploy so-manager (auto) / deploy (push) Successful in 20s
Reviewed-on: #5
2025-09-02 15:26:54 +09:00
7a267bd728 ユーザー情報変更画面修正 - 本人確認書類アップロード処理
All checks were successful
Deploy preview (main_higashide) / deploy (push) Successful in 13s
2025-09-02 15:22:08 +09:00
3 changed files with 11 additions and 58 deletions

View File

@ -30,52 +30,6 @@ class UserEditConfirmController extends Controller
// 直前のPOST値をold()やsession()->get('_old_input')で取得
$input = session()->get('_old_input', []);
return view('user.confirm', [
'user' => $user,
'input' => $input,
'active_menu' => 'SWC-1-1', // マイページメニューの選択状態用
'user_name' => $user ? $user->user_name : '', // ユーザー名(ヘッダー用)
]);
}
public function confirm(Request $request)
{
$user_id = session('user_id');
if (!$user_id) {
return redirect('/login');
}
$user = DB::table('user')->where('user_id', $user_id)->first();
if (!$user) {
return redirect('/login');
}
// 本人確認書類画像が画像ファイルかチェック
$rules = [
'photo_filename1' => 'nullable|file|image',
'photo_filename2' => 'nullable|file|image',
];
$messages = [
'photo_filename1.image' => '本人確認書類(おもて)は画像ファイルを選択してください。',
'photo_filename2.image' => '本人確認書類(ウラ)は画像ファイルを選択してください。',
];
$this->validate($request, $rules, $messages);
$input = $request->all();
// ファイル保存処理編集画面→確認画面POST時のみ
if ($request->hasFile('photo_filename1') && $request->file('photo_filename1')->isValid()) {
$file1 = $request->file('photo_filename1');
$filename1 = uniqid('photo1_') . '.' . $file1->getClientOriginalExtension();
$file1->storeAs('photo', $filename1, 'public');
$input['photo_filename1'] = $filename1;
}
if ($request->hasFile('photo_filename2') && $request->file('photo_filename2')->isValid()) {
$file2 = $request->file('photo_filename2');
$filename2 = uniqid('photo2_') . '.' . $file2->getClientOriginalExtension();
$file2->storeAs('photo', $filename2, 'public');
$input['photo_filename2'] = $filename2;
}
\Log::info('ユーザー情報編集確認画面にアクセス', [
'user_id' => $user_id,
]);
@ -88,6 +42,8 @@ class UserEditConfirmController extends Controller
]);
}
// 入力内容確認画面から「変更を確定する」ボタン押下時
public function submit(Request $request)
{

View File

@ -214,10 +214,10 @@ class UserEditController extends Controller
'user_relate_pre.max' => '関連先の都道府県は5文字以内で入力してください。',
'user_relate_city.max' => '関連先の市区町村は20文字以内で入力してください。',
'user_relate_add.max' => '関連先の住所は50文字以内で入力してください。',
'photo_filename1.image' => '本人確認書類画像1は画像ファイルを選択してください。',
'photo_filename1.max' => '本人確認書類画像1は4MB以内でアップロードしてください。',
'photo_filename2.image' => '本人確認書類画像2は画像ファイルを選択してください。',
'photo_filename2.max' => '本人確認書類画像2は4MB以内でアップロードしてください。',
'photo_filename1.image' => '本人確認書類画像(おもて)は画像ファイルを選択してください。',
'photo_filename1.max' => '本人確認書類画像(おもて)は4MB以内でアップロードしてください。',
'photo_filename2.image' => '本人確認書類画像(ウラ)は画像ファイルを選択してください。',
'photo_filename2.max' => '本人確認書類画像(ウラ)は4MB以内でアップロードしてください。',
'user_pass_new.min' => '新しいパスワードは8文字以上で入力してください。',
'user_pass_new.regex' => '新しいパスワードは半角英数字のみで入力してください。',
'user_pass_confirm.same' => '「新しいパスワード」と「パスワードの確認」が一致しません。',
@ -363,14 +363,14 @@ class UserEditController extends Controller
if ($request->hasFile('photo_filename1')) {
$file1 = $request->file('photo_filename1');
$filename1 = uniqid('photo1_') . '.' . $file1->getClientOriginalExtension();
$file1->storeAs('public/photo', $filename1);
$user->photo_filename1 = $filename1;
$file1->storeAs('photo', $filename1, 'public');
$request->merge(['photo_filename1' => $filename1]);
}
if ($request->hasFile('photo_filename2')) {
$file2 = $request->file('photo_filename2');
$filename2 = uniqid('photo2_') . '.' . $file2->getClientOriginalExtension();
$file2->storeAs('public/photo', $filename2);
$user->photo_filename2 = $filename2;
$file2->storeAs('photo', $filename2, 'public');
$request->merge(['photo_filename2' => $filename2]);
}
// パスワード(ハッシュ化せず次画面に渡す)

View File

@ -33,12 +33,9 @@ Route::get('/user/edit', [UserEditController::class, 'show'])
Route::post('/user/edit', [UserEditController::class, 'update'])
->name('user.edit.post');
// ユーザー情報編集確認GET: 確認画面表示)
// ユーザー情報編集確認
Route::get('/user/edit/confirm', [UserEditConfirmController::class, 'show'])
->name('user.confirm');
// ユーザー情報編集確認POST: 確認画面表示)
Route::post('/user/edit/confirm', [UserEditConfirmController::class, 'confirm'])
->name('user.edit.confirm');
// 入力内容確認画面から「変更を確定する」ボタン押下時(認証メール送信)
Route::post('/user/edit/submit', [UserEditConfirmController::class, 'submit'])