본문 바로가기
반응형

개발자 이야기10

http_build_query http_build_query 함수는 배열이나 객체를 URL인코딩하여 쿼리문자열로 만드는 함수이다.인코딩이 되는걸 잊고 해당 값을 또 urlencode해서 두번 인코딩이 되는 불상사가 일어나기도 했다.http_build_query( array|object $data, string $numeric_prefix = "", ?string $arg_separator = null, int $encoding_type = PHP_QUERY_RFC1738): string$data는 쿼리문자열로 만들 배열이나 객체를 입력하면 된다.$numeric_prefix는 인덱스(변수명)이 숫자로 이루어질 경우 변수명 앞에 붙이는 문자열이다. $arg_separator는 쿼리문자열을 만들때 각각의 값 사이에 구.. 2024. 6. 21.
URL Encode 데이터를 URL을 통해 보내야 할때 한글이나 특수문자등은 인코딩을 해서 보내주어여 문제없이 전달을 할 수 있다.이때 PHP의 urlencode함수를 통해 인코딩을 할 수 있다.urlencode(string $string): string파라메터로 들어가는 $string은 인코딩할 문자를 넣으면 된다.하지만 이렇게 할 경우 공백은 +로 변환이 된다. 상대방에서 디코딩을 할때 +는 공백으로 디코디잉 안되고 그대로 +로 남는 경우가 있다.이경우 공백을 +가 아닌 %20으로 인코딩이 되어야 하는데, 이때 사용하는 함수가 rawurlencode이다.rawurlencode(string $string): string이렇게 하면 공백이 +가 아닌 %20으로 인코딩이 된다.물론 디코딩하는 함수는 각각 urldecode와 .. 2024. 6. 21.
생성 쿼리 출력하기 I3에서 마지막 실행 쿼리를 출력하기 위해서는 아래와 같이 사용한다.$this->db->last_query(); 하지만 빌더를 사용해 쿼리를 생성하여 실행하기 전 쿼리를 확인하기 위해서는 각 실행에 따라 아래처럼 사용한다.//select$this->db->get_compiled_select();//insert$this->db->get_compiled_insert();//update$this->db->get_compiled_update();/delete$this->db->get_compiled_delete(); insert쿼리를 사용한다면, 아래처럼 해주면 된다.$data = array( 'title' => 'My title', 'name' => 'My Name', .. 2024. 6. 11.
ajax에서 에러 출력하기 $.ajax({ type: "POST", url: "", data: "", success: function(result) {}, error:function(request, status, error){ alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); } });ajax에서 error부붙에 위와 같이 해주면 오류 내용을 확인할 수 있다. 2017. 10. 29.
외부 브라우저로 웹페이지 띄우기 웹페이지의 경우 앱상의 Webview를 통하여 보여지기도 하지만 때로는 외부 브라우져를 통해 띄워야 할 필요가 있다. 이때 다음과 같이 해주면 외부 브라우져를 호출하여 페이지를 띄울 수 있다. Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com")); startActivity(intent); 당연히 위에대로 실행하면.....안된다. 퍼미션을 주어져야 한다. 만약 크롬을 강제로 띄우려 한다면, startActivity전에 다음과 같이 넣어주면 된다. intent.setPackage("com.android.chrome"); 2017. 10. 27.
'워나크라이' 윈도우 버전별 패치 현재 전 세계적으로 랜섬웨어 '워나크라이'가 이슈로 떠로르고 있다.랜섬웨어는 컴퓨터의 중요 파일(문서, 이미지등)들을 암호화 하여 사용하지 못하게 하고 난 후, 비용을 지불해야 사용할 수 있도록 하는 일종의 악성코드이다.여러 백신 업체에서 복호화를 하는 프로그램을 무료로 배포하고 있지만, 신종이나 변종의 경우 복구가 바로 불가능 하기 때문에 거의 해당 파일을 포기하거나 비용을 지불하고 복구해야한다. 솔직히 비용을 지불한다고 복구가 될지는 의문인지라 그냥 포기가 정석인듯 하다.그중 '워나크라이'는 전 세계적으로 최근에 유행하는 랜섬웨어로 윈도우의 SMB취약점을 이용해 공격하는 것이라고 한다. 세계적으로 피해사례가 속출되고 있으며, Xp등에 대한 업데이트를 중단했던 MS(본인들것에 대한 부분만 있으므로..... 2017. 5. 15.
ionic 개발은 위한 준비 완료 하이브리앱 개발을 하게 되었는데, 무엇으로 개발할지 이것저것 알아보던 중 ionic과 자마린이 죄총적으로 남아있게 되었다. 고심고심 끝에, 그리고 여러가지 자료수집 후 ionic으로 개발을 결정하고 개발을 위한 준비를 진행하게되었다. 그런데 iPhone을 개발하려고 하면 윈도우에서 안된다고 하기에.... 결국은 ViertualBox에 maxOS를 올리고 ionic을 설치하기로 했다. 인터넷에 올라와 있는 여러가지 설치방법을 참고해 설치를 진행했지만, 몇가지 문제점이 있었다. 1. 우선 현재의 버전과 많이 다르다는 것이다. 대부분 설치에 관한 내용은 초기 버전이 많았기에 화면 구성이 많이 달라 보이기도 하여 처음엔 제대로 설치된 것인지 의아해 했다. 2. 내 잘못인지, 아니면 올라온 설치 방법들이 간략하게.. 2017. 3. 27.
생성된 가상 하드디스크 용량 늘리기 ionic을 공부하기 위해 VirtualBox를 이용해 macOS를 설치하여 세팅 하는 중 하드용량이 부족한 일이 발생하였다. 80G를 만들었는데 이것저것 업데이트하고 설치하다보니 부족하게 된 것이다. 우선 가상하드는 "동적 확장 저장소"로 했는데, VirtualBox 어디를 둘러봐도 용량을 조절하는 메뉴가 없었다. 알고보니 UI상으로 변경하는 것이 아닌 CLI상으로 조정하는 거였다. 명령어는 VBoxManage.exe modifyhd "vdi 파일 명" --resize 사이즈(MB) 이다. 나의 경우 vdi파일이 있는 곳으로 이동하여 다음과 같이 120G로 조절하였다. "c:\Program Files\Oracle\VirtualBox\VBoxManage.exe" modifyhd "macOS Sierra... 2017. 3. 24.
macOS 마우스 스크롤 방향 조정 ionic을 사용해 개발하게 되어 버추얼박스를 이용해 macOS를 사용하게 되었다. 그런데 시작부터 문제는 마우스 스크롤이 문제였다. 방향이 반대......익숙해지자 하면서 사용했지만 역시나 무리 (처음엔 스크롤이 안되는줄...) 해결방법은 간단하다 "시스템 환경설정"에서 "마우스"항목으로 들어간다 "스크롤 방향:자연스럽게"의 체크를 해제한다. 그럼 자연스럽게 스크롤이 윈도우와 같이 이동한다. 도대체 저 자연스럽게의 의미는 뭐지?? 누구 기준으로 자연스럽다는 건지 알다가도 모를 일 2017. 3. 23.
반응형