php개발자(백엔드) 26 서브쿼리 concat() 검색 [서브쿼리 concat() 검색] 서브쿼리로 다른 테이블에서 두개의 필드를 합쳐서 가지고 올 경우 2개의 쿼리를 사용할수있다. 예시로 'member'와 'order'테이블이 있다. order테이블에는 mem_idx 가 있는데 이걸 기준으로 member테이블에서 정보를 가지고 와서 검색때 사용하려고 한다. member mem_idx mem_email1 mem_email2 order od_idx mem_idx (1) SELECT * FROM order WHERE (SELECT concat(mem_email1, '@', 'mem_email2) FROM member WHERE mem_idx = 'order'.mem_idx) like ''%{찾을변수}%" (2) SELECT *,(SELECT concat(mem_.. 2018. 3. 5. mysql order by와 limit 활용 [mysql order by와 limit 활용] 데이터를 지정한 갯수만큼 가져올때 limit를 사용한다.보통 order by를 사용하여 내림차순과 오름차순으로 정렬후에 가지고 오게 되는데자주 쓰이지는 않지만 다음과 같은 경우가 있다. 1. 최근 게시글을 아래쪽으로 정렬(asc사용)2. 최근 글에서 6개 데이터 가져오기 게시판에 맨 위에 글이 2017.01.02 가 되게 가지고 와야 한다. 만약 2017.01.08 게시글이 등록이 된다면2017.01.03 글이 맨 위로 오게 가지고 오는 요구사항이 된다.이론상 어려워 보이지는 않지만 sql문을 작성하다보면 뭔가 알게모르게 원하는 데이터를 가져오지 못하는 나를 발견했다. ㅋㅋ 방법은 총 2가지 이다. 1번 : 정렬을 마친 데이터에 php 함수(array_re.. 2017. 3. 10. XSS와 CSRF 방지 모듈 개발-1 [XSS와 CSRF 방지 모듈 개발-1] 어떤 폼에다가 클래스나 함수를 하나 넣으면 필요한 방지 시스템이 구축되어있다면 얼마나 좋을까?물론 전문적인 보안업체 프로그램을 넘어설만큼의 수준은 아니겠고, 또 만들어놓는다 한들 해커의 공격을 잘 막으리라는 보장은 없다. 눈앞에 당장 간단하게 몇 단계만 만들어놓는 정도로 2-3일의 작업기간을 가지고 진행하려 한다. 모듈에 들어갈 기능을 정리해본다. 1. 사용자 input값 유효성검사- 스크립트 코드를 포함한 특수문자 필터링- 스마트에디터에 입력한경우 스크립트 코드처리- 파일 업로드시 업로드 경로 변경여부 확인- 업로드가 허용된 확장자 설정 2. 폼 요소- 폼에 사용되는 action값 변경여부 확인- 폼 안에 input hidden값을 하나 추가하여 hidden 태.. 2017. 2. 2. CSRF 기초 [CSRF(Cross-Site request forgery) 기초] XSS가 자바스크립트를 실행시키는거라면 CSRF는 특정한 행동을 시키는 거다. CSRF는 사이트간 요청위조로 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 하는 공격을 말한다. 웹서버를 공격하는 형태로 사용자를 통해 공격을 한다. 사용자의 권한으로 악성공격 수행. 불특정 다수가 피해를 입는것이 특징이다. 개발자가 폼에서 설정해준 action값을 해커가 원하는 링크로 바꾸어 사용자가 submit을 할때 수정,삭제, 등록등의 행위를 하게 한다. 그리고 파일을 업로드 할경우 개발자가 설정한 루트에 업로드 하지 않고알아낸 루트로 변경하여 악성 프로그램을 업로드하는 경우가 CSRF공격에.. 2017. 2. 2. 이전 1 2 3 4 5 ··· 7 다음