bbs/insert.jsp
페이지 정보
본문
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ include file="/include/header.jsp" %>
<%
request.setCharacterEncoding("utf-8"); //한글 깨짐 방지
String code=request.getParameter("code");
String gongji=request.getParameter("gongji");
String subject=request.getParameter("subject");
String comment=request.getParameter("comment");
///// 홑따옴표 처리 /////
//문자열내에 싱글쿼트(홑따옴표)가 저장되어 있는 문자열을 DB에 저장할때
//Oracle이든, MSSQL이든 MySQL이든 Statement를 이용해서 저장한다면 에러를 유발시키게 됩니다.
//Statement에 넘겨줄 SQL문을 찍어보면 이유를 알 수가 있습니다.
//홑따옴표 자체가 컬럼을 구분하는 예약어(reserved word)다 보니 어디까지가 컬럼인지를 구분을 못해서 발생하는 에러입니다.
subject = subject.replaceAll("'", "''" ); //좌측의 값을 우측의 값으로 치환
comment = comment.replaceAll("'", "''" );
//오늘 날짜
java.util.Date today = new java.util.Date();
SimpleDateFormat cal = new SimpleDateFormat("yyyy-MM-dd");
String signdate = cal.format(today);
//디비 입력
String sql = "INSERT INTO "+code+" (id, name, subject, comment, signdate, ref, gongji)";
sql = sql + " VALUES ('"+session_id+"', '"+session_name+"', '"+subject+"', '"+comment+"', '"+signdate+"', 0, '"+gongji+"')";
Connection conn=DriverManager.getConnection(url, user, password);
Statement stmt=conn.createStatement();
stmt.executeUpdate(sql);
stmt.close();
conn.close();
response.sendRedirect("list.jsp?code="+code);
%>
- 이전글bbs/write.jsp 23.03.14
- 다음글bbs/view.jsp 23.03.14
댓글목록
등록된 댓글이 없습니다.