본문으로 바로가기
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

public function store(Request $request)
{
    // 요청에서 필요한 필드만 추출
    $input = $request->only(['idx', 'cb_idx', 'out_together', 'out_gender', 'out_age', 'out_area', 'out_cost']);

    // 'idx' 항목을 쿼리 조건으로 사용
    $idx = $input['idx'];
    unset($input['idx']); // 'idx' 항목은 저장하지 않기 위해 제거

    // 값이 있는 항목만 필터링
    $filteredData = array_filter($input, function($value) {
        return !is_null($value) && $value !== '';
    });

    // 테이블 이름을 설정
    $table = 'your_table_name'; // 실제 테이블 이름으로 변경

    // 기존 레코드 찾기
    $record = DB::table($table)->where('idx', $idx)->first();

    if ($record) {
        // 기존 레코드가 있으면 업데이트
        DB::table($table)->where('idx', $idx)->update($filteredData);
    } else {
        // 기존 레코드가 없으면 새 레코드 생성
        $filteredData['idx'] = $idx; // 새 레코드에 'idx' 포함
        DB::table($table)->insert($filteredData);
    }

    return response()->json([
        'success' => true,
        'message' => 'Data has been saved successfully.',
        'data' => $filteredData
    ]);
}