참고:

Dreamweaver CC 이상 버전에서 사용자 인터페이스가 간소화되었습니다. 따라서 이 문서에 설명된 옵션 중에 Dreamweaver CC 이상 버전에 없는 옵션이 있을 수 있습니다. 자세한 내용은 이 문서를 참조하십시오.

레코드 삭제 페이지 정보

사용자가 데이터베이스의 레코드를 삭제할 수 있는 페이지를 응용 프로그램에 넣을 수 있습니다. 이러한 페이지는 일반적으로 검색 페이지, 결과 페이지 및 삭제 페이지로 구성됩니다. 삭제 페이지는 보통 결과 페이지와 함께 동작하는 세부 정보 페이지입니다. 검색 및 결과 페이지에서는 사용자가 레코드를 검색할 수 있고 삭제 페이지에서는 레코드를 확인하고 삭제할 수 있습니다.

검색 및 결과 페이지를 만든 뒤에는 삭제 페이지를 여는 링크를 결과 페이지에 추가한 다음 레코드와 [전송] 버튼이 표시되는 삭제 페이지를 구성할 수 있습니다.

삭제할 레코드 검색

레코드를 삭제하려는 사용자는 먼저 데이터베이스에서 해당 레코드를 찾아야 합니다. 따라서 삭제 페이지를 사용하려면 검색 및 결과 페이지가 필요합니다. 사용자는 검색 페이지에 검색 조건을 입력하고 결과 페이지에서 레코드를 선택합니다. 사용자가 레코드를 클릭하면 삭제 페이지가 열리고 레코드가 HTML 양식에 표시됩니다.

검색 및 결과 페이지를 만든 뒤에는 삭제 페이지를 여는 링크를 결과 페이지에 만들어야 합니다. 그런 다음 사용자가 삭제하고자 하는 레코드의 ID를 전달하도록 링크를 수정합니다. 삭제 페이지에서는 이 ID를 사용하여 레코드를 찾은 다음 표시합니다.

  1. 결과 페이지에서 마지막 테이블 열 안을 클릭하고 [수정] > [표] > [행 또는 열 삽입]을 선택하여 레코드 표시에 사용할 표에 열을 만듭니다.
  2. [열] 옵션을 선택하고 [현재 열 뒤에] 옵션을 선택한 후 [확인]을 클릭합니다.

    표에 열이 추가됩니다.

  3. 새로 만든 테이블 열에서 동적 내용 자리 표시자가 포함된 행에 Delete 문자열을 입력합니다. 문자열은 탭 윤곽선이 표시된 반복 영역 안에 입력해야 합니다.

    삭제를 의미하는 단어나 기호가 포함된 이미지를 삽입할 수도 있습니다.

  4. Delete 문자열을 선택하여 해당 문자열에 링크를 적용합니다.
  5. 속성 관리자의 [링크] 상자에 삭제 페이지를 입력합니다. 모든 파일 이름을 입력할 수 있습니다.

    [링크] 상자 밖을 클릭하면 Delete 문자열이 테이블에 링크되어 나타납니다. 라이브 뷰에서 해당 링크가 모든 표 행의 동일 텍스트에 적용된 것을 볼 수 있습니다.

  6. 결과 페이지에서 삭제 링크를 선택합니다.
  7. (ColdFusion) 속성 관리자의 [링크] 상자에서 URL의 끝에 다음 문자열을 추가합니다.
    ?recordID=#recordsetName.fieldName#

    물음표는 다음에 하나 이상의 URL 매개 변수가 온다는 것을 서버에 알립니다. recordID는 URL 매개 변수의 이름으로, 원하는 이름을 붙일 수도 있습니다. URL 매개 변수의 이름은 나중에 삭제 페이지에서 사용하게 되므로 메모해 둡니다.

    등호 뒤에 나오는 표현식은 매개 변수의 값입니다. 이 경우, 매개 변수 값은 레코드세트에서 레코드 ID를 반환하는 ColdFusion 표현식에 의해 생성됩니다. 동적 표의 각 행에 대해 별도의 ID가 생성됩니다. ColdFusion 표현식에서 recordsetName은 레코드세트 이름으로 대체하고 fieldName은 각 레코드를 고유하게 식별하는 레코드세트의 필드 이름으로 대체합니다. 대부분의 경우 필드는 레코드 ID 번호로 구성됩니다. 다음 예제에서는 필드에 고유 위치 코드가 들어 있습니다.

    confirmDelete.cfm?recordID=#rsLocations.CODE#

    페이지를 실행하면 레코드세트의 CODE 필드 값이 동적 표의 해당 행에 삽입됩니다. 예를 들어 오스트레일리아 캔버라의 임대 위치 코드가 CBR이면 동적 표의 캔버라 행에는 다음 URL이 사용됩니다.

    confirmDelete.cfm?recordID=CBR
  8. (PHP) 속성 관리자의 [링크] 필드에서 URL의 끝에 다음 문자열을 추가합니다.
    ?recordID=<?php echo $row_recordsetName['fieldName']; ?>

    물음표는 다음에 하나 이상의 URL 매개 변수가 온다는 것을 서버에 알립니다. recordID는 URL 매개 변수의 이름으로, 원하는 이름을 붙일 수도 있습니다. URL 매개 변수의 이름은 나중에 삭제 페이지에서 사용하게 되므로 메모해 둡니다.

    등호 뒤에 나오는 표현식은 매개 변수의 값입니다. 이 경우, 매개 변수 값은 레코드세트에서 레코드 ID를 반환하는 PHP 표현식에 의해 생성됩니다. 동적 표의 각 행에 대해 별도의 ID가 생성됩니다. PHP 표현식에서 recordsetName은 레코드세트 이름으로 대체하고 fieldName은 각 레코드를 고유하게 식별하는 레코드세트의 필드 이름으로 대체합니다. 대부분의 경우 필드는 레코드 ID 번호로 구성됩니다. 다음 예제에서는 필드에 고유 위치 코드가 들어 있습니다.

    confirmDelete.php?recordID=<?php echo $row_rsLocations['CODE']; ?>

    페이지를 실행하면 레코드세트의 CODE 필드 값이 동적 표의 해당 행에 삽입됩니다. 예를 들어 오스트레일리아 캔버라의 임대 위치 코드가 CBR이면 동적 표의 캔버라 행에는 다음 URL이 사용됩니다.

    confirmDelete.php?recordID=CBR
  9. (ASP) 속성 관리자의 [링크] 필드에서 URL의 끝에 다음 문자열을 추가합니다.
    ?recordID=<%=(recordsetName.Fields.Item("fieldName").Value)%>

    물음표는 다음에 하나 이상의 URL 매개 변수가 온다는 것을 서버에 알립니다. recordID는 URL 매개 변수의 이름으로, 원하는 이름을 붙일 수도 있습니다. URL 매개 변수의 이름은 나중에 삭제 페이지에서 사용하게 되므로 메모해 둡니다.

    등호 뒤에 나오는 표현식은 매개 변수의 값입니다. 이 경우, 매개 변수 값은 레코드세트에서 레코드 ID를 반환하는 ASP 표현식에 의해 생성됩니다. 동적 표의 각 행에 대해 별도의 ID가 생성됩니다. ASP 표현식에서 recordsetName은 레코드세트 이름으로 대체하고 fieldName은 각 레코드를 고유하게 식별하는 레코드세트의 필드 이름으로 대체합니다. 대부분의 경우 필드는 레코드 ID 번호로 구성됩니다. 다음 예제에서는 필드에 고유 위치 코드가 들어 있습니다.

    confirmDelete.asp?recordID=<%=(rsLocations.Fields.Item("CODE").Value)%>

    페이지를 실행하면 레코드세트의 CODE 필드 값이 동적 표의 해당 행에 삽입됩니다. 예를 들어 오스트레일리아 캔버라의 임대 위치 코드가 CBR이면 동적 표의 캔버라 행에는 다음 URL이 사용됩니다.

    confirmDelete.asp?recordID=CBR
  10. 페이지를 저장합니다.
  1. 결과 페이지에서 마지막 테이블 열 안을 클릭하고 [수정] > [표] > [행 또는 열 삽입]을 선택하여 레코드 표시에 사용할 표에 열을 만듭니다.
  2. [열] 옵션을 선택하고 [현재 열 뒤에] 옵션을 선택한 후 [확인]을 클릭합니다.

    표에 열이 추가됩니다.

  3. 새로 만든 테이블 열에서 동적 내용 자리 표시자가 포함된 행에 Delete 문자열을 입력합니다. 문자열은 탭 윤곽선이 표시된 반복 영역 안에 입력해야 합니다.

    삭제를 의미하는 단어나 기호가 포함된 이미지를 삽입할 수도 있습니다.

  4. Delete 문자열을 선택하여 해당 문자열에 링크를 적용합니다.
  5. [서버 비헤이비어] 패널([윈도우] > [서버 비헤이비어])에서 플러스(+) 버튼을 클릭하고 팝업 메뉴에서 [세부 정보 페이지로 이동]을 선택합니다.
  6. [세부 정보 페이지] 상자에서 [검색]을 클릭하여 삭제 페이지를 찾습니다.
  7. [URL 매개 변수 전달] 상자에서 recordID처럼 매개 변수의 이름을 지정합니다.

    원하는 이름을 입력할 수 있으며, 이 이름은 나중에 삭제 페이지에서 사용하게 되므로 기록해 둡니다.

  8. [레코드세트] 및 [열] 팝업 메뉴에서 레코드세트와 열을 선택하여 삭제 페이지로 전달할 값을 지정합니다. 일반적으로 이 값은 레코드의 고유 키 ID처럼 레코드별로 고유합니다.
  9. [URL 매개 변수] 옵션을 선택합니다.
  10. [확인]을 클릭합니다.

    선택된 텍스트 앞뒤에 특수 링크가 지정됩니다. 사용자가 링크를 클릭하면 [세부 정보 페이지로 이동] 서버 비헤이비어가 레코드 ID를 포함하는 URL 매개 변수를 지정된 삭제 페이지로 전달합니다. 예를 들어 URL 매개 변수가 recordID이고 삭제 페이지가 confirmdelete.asp인 경우 사용자가 링크를 클릭하면 URL은 다음과 같이 표시됩니다.

    http://www.mysite.com/confirmdelete.asp?recordID=43

    URL의 첫 번째 부분인 http://www.mysite.com/confirmdelete.asp는 삭제 페이지를 열고, 두 번째 부분인 ?recordID=43은 URL 매개 변수를 나타냅니다. 이 부분이 찾아서 표시할 레코드를 삭제 페이지에 알려 줍니다. recordID라는 용어는 URL 매개 변수의 이름이고, 43은 그 값입니다. 이 예제에서 URL 매개 변수에는 레코드 ID 번호인 43이 포함됩니다.

삭제 페이지 구성

레코드가 나열되는 페이지를 완성한 후 삭제 페이지로 전환합니다. 삭제 페이지에 레코드가 표시되고 사용자에게 해당 레코드를 삭제할 것인지 묻습니다. 사용자가 양식 버튼을 클릭하여 삭제 작업을 확인하면 웹 응용 프로그램이 데이터베이스에서 레코드를 삭제합니다.

HTML 양식을 만들고, 양식에 표시할 레코드를 검색하고, 양식에 해당 레코드를 표시하고, 데이터베이스에서 레코드를 삭제하는 논리를 추가하여 이 페이지를 구성합니다. 사용자가 삭제하려는 단일한 레코드를 보유하는 레코드세트를 정의하고, 해당 레코드세트를 양식에 바인딩하여 레코드를 가져와서 표시합니다.

참고:

삭제 페이지에는 레코드 편집 서버 비헤이비어를 한 번에 하나씩만 포함할 수 있습니다. 예를 들어 삭제 페이지에는 [레코드 삽입] 또는 [레코드 업데이트] 서버 비헤이비어를 추가할 수 없습니다.

레코드를 표시할 HTML 양식 만들기

  1. 페이지를 만들어 앞 단원에서 지정한 삭제 페이지로 저장합니다.

    삭제 페이지는 앞 단원에서 [삭제] 링크를 만들 때 지정했습니다. 이 이름은 처음 파일을 저장할 때 사용합니다(예: deleteConfirm.cfm).

  2. [삽입] > [양식] > [양식]을 선택하여 페이지에 HTML 양식을 삽입합니다.
  3. 양식에 숨김 양식 필드를 추가합니다.

    숨김 양식 필드는 URL 매개 변수에 의해 전달된 레코드 ID를 저장하는 데 필요합니다. 숨김 필드를 추가하려면 양식에 삽입 포인터를 놓고 [삽입] > [양식] > [숨김 필드]를 선택합니다.

  4. 양식에 버튼을 추가합니다.

    사용자가 버튼을 클릭하여 표시된 레코드를 확인하고 삭제합니다. 버튼을 추가하려면 양식에 삽입 포인터를 놓고 [삽입] > [양식] > [버튼]을 선택합니다.

  5. 원하는 대로 페이지 디자인을 변경하고 저장합니다.

사용자가 삭제하려는 레코드 검색

  1. [바인딩] 패널([윈도우] > [바인딩])에서 플러스(+) 버튼을 클릭한 다음, 팝업 메뉴에서 [레코드세트(쿼리)]를 선택합니다.

    단순 [레코드세트] 또는 [데이터 세트] 대화 상자가 나타납니다. 고급 [레코드세트] 대화 상자가 나타나는 경우에는 [단순]을 클릭합니다.

  2. 레코드세트 이름을 지정한 다음, 사용자가 삭제할 수 있는 레코드가 포함된 데이터 소스 및 데이터베이스 테이블을 선택합니다.
  3. [열] 영역에서 페이지에 표시할 테이블 열(레코드 필드)을 선택합니다.

    일부 레코드 필드만을 표시하려면 [선택됨]을 클릭하고 목록에서 원하는 필드를 Ctrl 키를 누른 상태로 클릭(Windows)하거나 Command 키를 누른 상태로 클릭(Macintosh)하여 선택합니다.

    레코드 ID 필드를 표시하지 않을 경우에도 레코드 ID 필드가 포함되었는지 확인합니다.

  4. 다음과 같이 [필터] 영역을 완성하면 결과 페이지로부터 전달 받은 URL 매개 변수에 지정된 레코드를 찾아 표시할 수 있습니다.
    • [필터] 영역의 첫 번째 팝업 메뉴에서 삭제 링크가 포함된 페이지로부터 전달 받은 URL 매개 변수의 값과 일치하는 값이 포함된 레코드세트의 열을 선택합니다. 예를 들어 URL 매개 변수에 레코드 ID 번호가 포함된 경우 레코드 ID 번호를 포함하는 열을 선택합니다. 앞 단원에서 설명한 예제에서 CODE라는 레코드세트 열에는 삭제 링크가 포함된 페이지로부터 전달 받은 URL 매개 변수의 값과 일치하는 값이 포함되어 있습니다.

    • 첫 번째 메뉴 옆의 팝업 메뉴에서 등호가 이미 선택되어 있지 않으면 등호를 선택합니다.

    • 세 번째 팝업 메뉴에서 [URL 매개 변수]를 선택합니다. 삭제 링크가 포함된 페이지에서는 URL 매개 변수를 사용하여 정보를 삭제 페이지로 전달합니다.

    • 네 번째 상자에 삭제 링크가 포함된 페이지가 전달하는 URL 매개 변수의 이름을 입력합니다.

       

    레코드세트 대화 상자
    레코드세트 대화 상자

  5. [확인]을 클릭합니다.

    레코드세트가 [바인딩] 패널에 나타납니다.

사용자가 삭제하려는 레코드 표시

  1. [바인딩] 패널에서 레코드세트 열(레코드 필드)을 선택한 다음 삭제 페이지로 드래그합니다.

    이 읽기 전용 동적 내용을 양식 경계 내부에 삽입해야 합니다. 페이지에 동적 내용을 삽입하는 방법에 대한 자세한 내용은 텍스트를 동적으로 만들기를 참조하십시오.

    다음으로, 레코드 ID 열을 숨김 양식 필드에 바인딩해야 합니다.

  2. [보이지 않는 요소]가 활성화되어 있는지 확인한 다음([보기] > [시각 도구] > [보이지 않는 요소]), 숨김 양식 필드를 나타내는 노란색 방패 아이콘을 클릭합니다.

    그러면 숨김 양식 필드가 선택됩니다.

  3. 속성 관리자에서 [값] 상자 옆에 있는 번개 모양 아이콘을 클릭합니다.
  4. [동적 데이터] 대화 상자에서 레코드세트의 레코드 ID 열을 선택합니다.

    다음 예제에서 레코드 ID 열인 CODE에는 고유한 저장 코드가 들어 있습니다.

    레코드 ID 열 선택됨
    레코드 ID 열 선택됨

  5. [확인]을 클릭하고 페이지를 저장합니다.
    완성된 삭제 페이지
    완성된 삭제 페이지

레코드 삭제를 위한 논리 추가

선택한 레코드를 삭제 페이지에 표시한 후에는 사용자가 [삭제 확인] 버튼을 클릭할 때 데이터베이스에서 레코드를 삭제하는 논리를 페이지에 추가해야 합니다. [레코드 삭제] 서버 비헤이비어를 사용하면 이 논리를 빠르고 쉽게 추가할 수 있습니다.

레코드를 삭제하는 서버 비헤이비어를 추가하려면(ColdFusion, PHP)

  1. Dreamweaver에 ColdFusion 또는 PHP 삭제 페이지가 열려 있는지 확인합니다.
  2. [서버 비헤이비어] 패널([윈도우] > [서버 비헤이비어])에서 플러스(+) 버튼을 클릭한 다음, [레코드 삭제]를 선택합니다.
  3. [변수가 정의된 경우 먼저 확인] 상자에서 [기본 키 값]이 선택되어 있는지 확인합니다.

    기본 키 값은 나중에 대화 상자에서 지정합니다.

  4. 레코드를 삭제할 데이터베이스에 서버 비헤이비어를 연결할 수 있도록 [연결] 또는 [데이터 소스](ColdFusion) 팝업 메뉴에서 데이터베이스에 대한 연결을 선택합니다.
  5. 표 팝업 메뉴에서 삭제할 레코드가 포함된 데이터베이스 테이블을 선택합니다.
  6. [기본 키 열] 팝업 메뉴에서 레코드 ID가 포함된 테이블 열을 선택합니다.

    [레코드 삭제] 서버 비헤이비어가 이 열을 찾습니다. 이 열에는 확인 페이지에서 숨김 양식에 바인딩한 레코드세트 열과 동일한 레코드 ID 데이터가 포함되어 있어야 합니다.

    레코드 ID가 숫자이면 [숫자] 옵션을 선택합니다.

  7. (PHP) [기본 키 값] 팝업 메뉴에서 삭제할 레코드를 식별하는 레코드 ID가 포함된 페이지의 변수를 선택합니다.

    이 변수는 숨김 양식 필드에 의해 만들어집니다. 변수의 이름은 숨김 필드의 이름 속성과 같으며 양식의 메서드 속성에 따라 양식 또는 URL 매개 변수입니다.

  8. [삭제 후 이동 위치] 또는 [성공한 경우 이동 위치] 상자에서, 레코드를 데이터베이스 테이블에서 삭제한 후에 표시할 페이지를 지정합니다.

    레코드가 삭제되었음을 사용자가 확인할 수 있도록 사용자에게 표시할 간략한 성공 메시지가 포함된 페이지나 나머지 레코드 목록이 표시된 페이지를 지정할 수 있습니다.

    레코드 삭제 대화 상자
    레코드 삭제 대화 상자

  9. [확인]을 클릭하고 작업을 저장합니다.

레코드를 삭제하는 서버 비헤이비어를 추가하려면(ASP)

  1. Dreamweaver에 ASP 삭제 페이지가 열려 있는지 확인합니다.
  2. [서버 비헤이비어] 패널([윈도우] > [서버 비헤이비어])에서 플러스(+) 버튼을 클릭한 다음, [레코드 삭제]를 선택합니다.
  3. 레코드를 삭제할 데이터베이스에 서버 비헤이비어를 연결할 수 있도록 [연결] 팝업 메뉴에서 데이터베이스에 대한 연결을 선택합니다.

    연결을 정의해야 할 경우 [정의] 버튼을 클릭합니다.

  4. [표에서 삭제] 팝업 메뉴에서 삭제할 레코드를 포함하는 데이터베이스 테이블을 선택합니다.
  5. [레코드 선택 위치] 팝업 메뉴에서 삭제할 레코드를 포함하는 레코드세트를 지정합니다.
  6. [고유 키 열] 팝업 메뉴에서는 데이터베이스 테이블의 레코드를 구분할 키 열(보통 레코드 ID 열)을 선택합니다.

    값이 숫자인 경우 [숫자] 옵션을 선택합니다. 일반적으로 키 열에는 숫자 값만 사용할 수 있지만 텍스트 값을 사용할 수 있는 경우도 있습니다.

  7. 삭제 명령을 서버에 전송하는 [전송] 버튼이 있는 HTML 양식을 [전송할 때 삭제] 팝업 메뉴에서 지정합니다.
  8. [삭제 후 이동 위치] 상자에서, 레코드를 데이터베이스 테이블에서 삭제한 후에 표시할 페이지를 지정합니다.

    레코드가 삭제되었음을 사용자가 확인할 수 있도록 사용자에게 표시할 간략한 성공 메시지가 포함된 페이지나 나머지 레코드 목록이 표시된 페이지를 지정할 수 있습니다.

  9. [확인]을 클릭하고 작업을 저장합니다.

삭제 페이지 테스트

  1. 검색, 결과, 삭제 페이지를 웹 서버에 업로드하고, 브라우저를 연 다음 삭제하여 버릴 수 있는 테스트 레코드를 검색합니다.

    결과 페이지에서 삭제 링크를 클릭하면 삭제 페이지가 나타납니다.

  2. [확인] 버튼을 클릭하여 데이터베이스에서 레코드를 삭제합니다.
  3. 레코드를 다시 검색하여 레코드가 삭제되었는지 확인합니다. 결과 페이지에 삭제한 레코드가 더 이상 표시되지 않습니다.

이 작업에는 Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License의 라이센스가 부여되었습니다.  Twitter™ 및 Facebook 게시물은 Creative Commons 약관을 적용받지 않습니다.

법적 고지 사항   |   온라인 개인 정보 보호 정책