목록전체 글 (303)
처음부터 차근차근
submit버튼 여러개 만들기 이렇게 보내면 servlet class에서 submit의 value값을 받을 수 있다. String button_ = request.getParameter("button"); 입력 데이터 배열로 받기 이렇게 같은 name으로 값을 여러개 보내면 servlet class에서 배열로 받을 수 있다. int sum = 0; String[] val_ = request.getParameterValues("val"); for (int i = 0; i < val_.length; i++) { int number = Integer.parseInt(val_[i]); // 여기서 number 변수는 for문 돌때마다 새로 정의되지 않음 sum += number; } number은 for문 돌때..

servlet container servelt이 실행되면 서버의 메모리 공간에 올라가게 되는데 이 공간을 servlet container이라고 한다. servlet filter servlet이 실행되기 직전과 실행되고난 직후에 실행되는 class이다. 그래서 주로 모든 servlet에 공통적으로 넣어야할 내용이 있을 때 사용한다. 예시 : request.setCharacterEncoding("UTF-8"); servlet 실행되기 직전에 실행되어 이 서블릿이 실행될지 말지도 결정할 수 있기 때문에 인증이나 권한에 대한 일에도 사용된다. servlet filter 만드는 방법 src / 패키지 밑에 class 새로 만들기 servlet filter 연결하는 방법 web.xml 사용 annotation 사용..

웹서버 -> 웹 브라우저(클라이언트)로 데이터 보낼 때 한글이 깨지는 유형 1. ??? 2. 궯뚧뺧꺓쓁 한글이 깨지는 이유 1번의 경우 : ??? 웹서버에서 클라이언트(웹 브라우저)로 데이터를 보낼 때 기본 인코딩 방식은 ISO-8859-1(주로 유럽에서 사용)이다. ISO-8859-1방식은 데이터를 1byte씩 나눠서 보낸다. 한글자당 2byte인 한글이 1byte로 나눠져서 보내지니 웹 브라우저에서 아예 무슨 문자인지 인식을 못하는 것이다. 해결 response.setCharacterEncoding("UTF-8"); 웹 서버에서 웹 브라우저로 데이터를 보낼 때의 방식을 utf-8 방식(한번에 2byte씩 보냄)으로 설정한다. 2번의 경우 : 궯뚧뺧꺓쓁 서버에서 UTF-8 인코딩 방식으로 클라이언트에 ..

프로젝트명 : jeju induk hotel 기간 : 2021-11-07 ~ 2021-12-20 설명 : 호텔 예약 사이트. 2021년 2학년 2학기 PHP Framework 실무 강의에서 만든 팀 프로젝트. 호텔에 대한 설명과 예약 기능, 서비스 안내, 이벤트 안내 등 호텔에 대한 정보가 나와있음. 비회원 예약과 회원 예약으로 나누어져 있어 편리. githib 사이트 : https://github.com/soyoungkimm/hotel_project ※ 필자가 만든 화면 위주로 캡처함 사용자 페이지 Admin 페이지

chart.js를 이용해서 예약 연도별, 월별, 기간별 통계와 객실별 통계, 후기 별점 통계를 만들었다. 이미지와 같이 datepicker을 이용해 날짜를 원하는 날짜를 정하고 확인 버튼을 누르면 datepicker의 onClose 이벤트에 의해 새로 차트가 그려진다. $( function() { $( ".datepicker" ).datepicker({ changeMonth: true, changeYear: true, showButtonPanel: true, closeText: '확인', dateFormat: 'yy-mm', onClose: function(dateText, inst) { var month = $("#ui-datepicker-div .ui-datepicker-month :selected"..

admin 로그인 체크 admin 페이지는 데이터베이스에 대한 내용이 있기 때문에 보안이 중요한 웹페이지이다. 그래서 사용자가 url을 치고 admin 페이지에 들어오려고 할 때 로그인을 하지 않은 사용자는 들어올 수 없도록 만들었다. function _checkAdminLogin() { // admin이 login 되었는지 확인 if(!$this->session->userdata('admin_id')) { $this->load->view("admin_warning"); return false; } else { return true; } } 세션 데이터중 key값이 admin_id인 세션의 value값을 받아오는데 이 값이 없다면 admin_warnig 페이지를 로드하고 false를 반환한다. 반환 값으..

코딩을 하다가 위와 같은 오류가 떴다. 이 오류의 발생 원인은 함수 매개변수 개수가 원래 받아야되는 개수보다 적게 들어왔을 때 생긴다. 예를 들어서 function test (int param1, int param2) { } test(1); // 이럴 때 발생한다. 그래서 함수의 매개변수 개수를 맞춰주면 오류가 해결된다.

core core란 framework의 기본 로직이다. 보통 framework를 사용해서 개발을 할 때 framework에서 제공하는 기본 환경에 나만의 코드를 만들어서 확장시키는데 이때 framework에서 제공하는 기본 로직을 core라고 생각하면 된다. core 파일 보기 system / core 디렉토리 안을 보면 여러 개의 파일이 있는데 이 파일들이 codeigniter가 동작할 때 로드되는 core 파일들이다. core 확장하는 방법 core 자체를 수정하면 나중에 codeigniter가 버전 업되면 문제가 생길 수 있다. 이 문제가 일어나지 않게 하기 위해 codeigniter에서 core을 확장하는 방법을 2가지 제공한다. hook 이용하는 방법 상속을 이용하는 방법 이 중 상속을 이용하여..