본문으로 바로가기
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
    ]);
}

'[ Web 관련 ] > Laravel' 카테고리의 다른 글

라라벨 암호화  (0) 2024.06.24
라라벨 엑셀 다운로드 업로드  (0) 2024.06.15
Cannot use object of type stdClass as array 오류  (0) 2024.05.24
라라벨 RAW쿼리 사용  (0) 2024.04.29
라라벨 오류 메시지 리턴  (0) 2024.04.25