캡ì².PNG

 

상품 모듈을 만든다 하면 예를 들면 

 

하얀색 티셔츠 상품이 있고

 

옵션이별로 가격이 추가됩니다

 

(ex)

 

하얀색 티셔츠 (95) / 2000

하얀색 티셔츠 (100) / 2000

 

이런식으로?..말이죠

 

캡ì²2.PNG

DB는 이런식으로 해놓았습니다

 

문제는 위의 상품 옵션에서 (원래는 옵션이름 적는칸 , 가격칸 나눠져있습니다) 상품이름과 가격을 입력후 옵션 추가를 누르면 DB에 바로위의 사진처럼 저장이 되면서 wirte.html이 새로고침이 되면서 상품옵션 기입칸 밑에 옵션 리스트가 뜨는것인데... html 폼에서 바로 db로 저장할수있는 방법이 있을까요?... 아니면 팝업창으로도.. 가능할까요?

 

PS.. 군부대 PC로인해 사진첨부가 불가능해서 링크로 연결해 출력이 느릴수도있습니다!..

 

  • profile

    html은 클라이언트에서 실행되고 DB는 서버 내에 있습니다.

    html에서 DB에 직접 접근할 수 있다면 서버가 뚫렸다는 얘기이니 큰일입니다 ㄷㄷㄷ

    html과 DB 사이는 반드시 서버에 있는 또다른 프로그램이 중재해 주도록 되어 있습니다.

     

    XE 모듈이라면 저 화면은 view에서 스킨을 불러와서 띄워주는 것이겠지요?

    view와 DB 사이를 중재해 주는 역할은 controller가 수행합니다.

     

    - 상품 옵션 입력란과, 옵션 추가 버튼을 <form>으로 묶어서

    - 버튼을 클릭하면 <form>을 제출하도록 하고

    - 제출한 내용을 controller의 특정 함수(예: proc모듈명AddOption)에서 받아서

    - 권한이 있는지, 올바른 내용인지 등을 확인하고

    - DB에 저장한 후

    - 다시 view로 리다이렉트(setRedirectUrl)해주면...

    사용자 입장에서는 옵션 추가 후 새로고침된 것처럼 보입니다.

     

    AJAX로 처리하는 방법도 있지만 이것도 겉모습이 다를 뿐

    내부적으로 controller에 연결해야 하는 것은 똑같아요.

     

  • profile profile
    그렇네요.. view에서 db에 접근이... 감사합니다!
  • ?

    비슷하게 사용중인 쇼핑몰 입니다.

    권한있는 유저만 작성가능하도록 해놓고..

    새창으로 띄워서 DB에 넣을수 있게 되어 있습니다.

    상품등록용 view가 나오고, 작성후 등록 버튼을 누르면 controller에서 DB로 입력 이후 부모창이 새로고침되는 형태입니다.

     

    쇼핑몰샘플.png

  • ? profile
    오.. 이런 방법도 상당히 좋은것같습니다 감사합니다~