strlen 은 한글 한글자를 3바이트로 처리한다.보통 검색을 하면 mb_strlen 을 사용하라고 하지만,아파치에 mb_strlen 관련 라이브러리를 설치하고 재실행하는 과정이실제 서비스하는 페이지에서는 곤란... 이럴 때 iconv_strlen 을 써보자! iconv_strlen($str, 'UTF-8'); iconv_strlen($str, 'CP949'); 각자 개발 인코딩에 맞게 쓰면 된다.euc-kr 인 경우 cp949 로 ~ http://php.net/manual/en/function.iconv-strlen.php 공식 문서에 따르면 인코딩종류는 생략할 수 있다고한다.
관리자페이지를 보다 예쁘게 만들고 싶을 때 애용하는 부트스트랩 템플릿 'SB Admin 2' 간단한 관리자페이지에는 SB Admin 2 템플릿이 가볍고 괜찮은 것 같다. 업무에 참고하는 페이지 두 곳 https://blackrockdigital.github.io/startbootstrap-sb-admin-2/pages/index.html https://getbootstrap.com/docs/4.0/components/list-group/ 부트스트랩에 정의된 class 여도 SB Admin 2 에는 지원안하는 클래스들도 있으니 참고!
잘 되던 페이지에 따로 에러나는 것도 없이 안 되기 시작했다.콘솔에 찍힌 에러는 저것 뿐Unrecognized Content-Security-Policy directive ''self''. 구글에서 Content-Security-Policy 에 대해 찾아봤지만 별 도움이 못 되었다. 문제는 함수명 때문이었다.자바스크립트에 함수를 추가하면서 동일 이름으로 함수를 만들었기 때문... 함수가 작동하지 않는다면, 동일 이름으로 된 함수가 있는건 아닌지 확인해보세요~!! ***결국 내 문제와 Content-Security-Policy 는 별개의 문제.지금도 여전히 저 에러로그가 뜨는 중...
업무에서 개발환경은 PHP + Oracle 이다.php 에서 오라클 연결을 시도했는데 TNS 에러가 떴다. 해결방법1. phpinfo();ORACLE_HOME 에서 오라클 설정이 있는 디렉토리를 찾는다. 2. 에딧플러스 나 서버에서 ORACLE_HOME 위치로 이동그 안에서 network/oracle/admin/tnsnames.ora 찾음 3. TNS 등록 해결!! 잘 연결이 되나 확인하려면 서버에서 TNSPING [sid명] 이라고 입력하면 된다.OK 가 뜨면 성공 :-)
개발서버에서 문제가 없었는데, 실서버에 파일을 올리니 오라클 db에서 가져오는 한글이 물음표로 떴다. ???? 구글링의 결론은, DB 커넥션 하기 전에 한 줄 추가하기putenv("NLS_LANG=KOREAN_KOREA.KO16KSC5601"); 이렇게 추가하고 db 에서 가져온 데이터를 utf-8 페이지에 표시하기 위해 iconv 를 해주었다. http://corehunter.tistory.com/28이곳엔 더 많은 정보가 있어요 ㅎㅎ // UTF-8 문자셋 설정$conn = oci_connect('user_name', 'pwd', 'test_db', 'AL32UTF8');// EUC-KR 문자셋 설정$conn = oci_connect('user_name', 'pwd', 'test_db', 'KO16M..
ORA-01756: quoted string not properly terminated 에러 상으로는 ' 이거 짝을 맞춰서 잘 쓰라는 건데,값이 한글로 들어갈 때도 저런 에러가 발생합니다. 저의 경우엔 한글 데이터가 utf-8 로, 한글 그대로 들어갈 때 발생했어요.한글 데이터를 euc-kr 로 하고 인코딩해서 넘기면 에러가 해결됐습니다. -캐릭터셋 문제 해결하기_ php버전putenv("NLS_LANG=KOREAN_KOREA.UTF8");$this->conn = oci_connect($this->DBUSER, $this->DBPW, $this->DBNAME); oci_connect 로 디비연결하기 전에putenv("NLS_LANG=KOREAN_KOREA.UTF8");추가하면 따로 재부팅하지 않아도 된다..
(제목은 내가 썼던 검색어 그대로.. ㅋ-ㅋ) 자바스크립트의 form 태그 안에 input type이 text 인게 1개만 있으면, 엔터 누르면 바로 submit 이 된다.검색을 하는데 엔터를 누르면 한글 검색어가 제대로 인코딩 되어 들어가고form 안에 있는 input type=button 을 누르면 onclick 으로 설정된 함수가 실행되어 값이 엉망이었다. 해결)form 태그에 accept-charset="euc-kr" 속성 추가-> input type=button 을 submit 으로 변경 + IE 에서는 accept-charset 속성 실행이 안된다. onsubmit="document.charset='euc-kr';" 속성을 추가해 줄 것 ㅅ_ㅅonsubmit 에 자바스크립트 함수를 호출해서 하..
자바스크립트에서 한글 인코딩을 할때 보통 escape/encodeURI 함수를 이용합니다.escape 를 이용하면 앞에 %u 가 붙고 encodeURI 로 하면 그냥 % 만 붙어요.그런데 여기서 중요한? 것 하나가 있어요.utf-8 인 한글과 euc-kr 인 한글을 인코딩했을 때의 차이입니다.utf-8 인 한글을 encodeURI 로 인코딩을 하면 한글 한 글자당 3개의 유니코드로 변환이 돼요. (박 -> %EB%B0%95)그런데 euc-kr 에서 encodeURI 로 변환을 하면 2개의 유니코드로 변환이 됩니다. (박 -> %B9%DA) 자바스크립트 form 에서 한글 데이터를 넘길 때 뭔가 잘 안된다면, utf-8 인지 euc-kr 인지 확인할 것. 페이지 자체는 utf-8 인데 데이터를 넘길 때는 ..
정수는 $n
입력 받은 양의 정수는 $n