인코딩 깨질 때
·
Development/PHP
1. DB connect 확인 # DB Connent $DB = new db4mysql(); $DB -> getConnection(); mysql_query ( 'set names utf8' ); // 추가 인코딩 깨질 때는 EUC-KR 일 수 있으니 확인하기 2. 파싱하는 경우, Content-Type 추가해주기(UTF-8) $strParse.= "Content-Type: text/html;charset=UTF-8\r\n"; 3. iconv 함수 사용 # DE(독일어) $strBody = iconv("ISO-8859-1","utf-8", $strBody); + #그래도 깨질 경우, 각각 iconv함수를 사용한다. $strWrite = iconv("ISO-8859-1","utf-8", $strWrite)..
[Crawler] post 방식의 json 파싱
·
Development/PHP
맨날 get 방식만 사용하다가 오랜만에 post방식 사용하려니 잘안되어서 머리 아팠는데 우여곡절에 해결 ㅎㅎ post 파싱이 안될때 ! 400 bad request 301 moved parameter 해결방법 경로 : 개발자도구(F12) > Network > Payload > Request Payload - postValue 값 넘겨주기 - postValueLen(:postValue의 길이) 넘겨주기 $strPOSTValueLen = strlen( $strPOSTValue ); 주의 : 값 넘겨줄 때 빈 값이 있으면 안됨. 파싱 전 입력한 데이터들 print_r로 찍어보기. - Referer 값 주기 더보기 POST subURL HTTP/1.1 Host: HostURL Content-Type: appli..
PHP 인젝션
·
Development/PHP
시작 로그인 기능을 사용 할 때 mysql_escape_string 함수를 사용하는 이유는 ? ex. mysql_escape_string($_POST[u_id]) 이는 인젝션을 방어하기 위한 가장 기본적인 부분이다. * 인젝션 : 해킹 또는 공격을 위한 의도적인 코드 변조(웹해킹의 한 종류) ex. SQL문 같은 경우 where절을 이용하여 조건을 준 후, 데이터를 받아오는데 그 과정에서 논리연산자(and, or, not 등)을 이용해서 코드를 변경하는 것 💬설명 # 1. 아이디/비밀번호가 맞는 계정정보를 받아오는 코드를 작성 SELECT * FROM users WHERE id = "$_POST['id']" AND pw = "$_POST['pw']" # 2. 악의적인 사용자는 $_POST['pw'] 의 ..