22-07-24 진행상황

(。◠ ◠。)·2022년 7월 24일
0

제품 등록 파일처리

제품 업로드 폼에 파일 업로드를 추가하고
썸네일 보기도 같이 넣었다.

업로드 코드

파일업로드는 가장 기본적으로만 진행했다.
폼은 post로 진행할 것 enctype을 추가할 것

<form id="writefrm" action="InsertProductServlet" 
      method="post" enctype="multipart/form-data">

request.getParameter가 안 되기 때문에
multi.getParameter 로 진행할 것.

파일이 없이 등록하는 경우를 위해 fileName == null 일 경우는
그냥 제품 테이블에만 등록하였고
파일이 있는 경우는 제품테이블과 파일 테이블에 같이 등록하였다.

		String savePath = "upload";// 저장하는 폴더
		int uploadFileSizeLimit = 5 * 1024 * 1024;
		String encType = "utf-8";

		ServletContext context = getServletContext();
		String uploadFilePath = context.getRealPath(savePath);
		MultipartRequest multi = new MultipartRequest
        (request, uploadFilePath, uploadFileSizeLimit, encType, new DefaultFileRenamePolicy());
        int productPrice = Integer.parseInt(multi.getParameter("productPrice"));
        String fileName = multi.getFilesystemName("uploadProduct");
        
        if (fileName == null) {
			int result = dao.insertProduct(productName, productPrice, productType, productBrand);
			if (result == 1) {
				System.out.println("파일 없이 등록완료");
			}
		} else {
			int result = dao.insertProduct(productName, productPrice, productType, productBrand);
			int fileResult = dao.insertProductFile(productName, fileName);
			if (result == 1 && fileResult == 1) {
					System.out.println("파일까지 등록완료");
			} 
		}

반복문으로 이미지 불러와서 테이블에 넣기

img src에 변수 추가하는것때문에 약간 헤매었다.
'<img src="upload/'+results[i].productfile+'">'
으어어..

	$.each(results, function(i){					
		str += '<TD>'+'<img src="upload/'+results[i].productfile+'" height="100px">'+'</TD>
        <TD >' + results[i].productType + '</TD>
        <TD >' + results[i].productName + '</TD>
        <TD >' + results[i].productPrice + '</TD>
        <TD >' + results[i].regdate + '</TD>';
		str += '</TR>';	
		});


이런느낌으로 들어가고 이미지가 없는경우는 기본 이미지가 자동으로 들어간다.

추가할 것...

  • 제품명 상세페이지 만들기
  • 메인페이지의 후기내용 추가하기
profile
화이탱!

0개의 댓글