본문 바로가기

php

XML Signature PHP 에서 XML Signature 를 구현하기 위해서는 1. xmlseclibs 1.1. 라이브러리 다운받기 https://github.com/robrichards/xmlseclibs - xmlseclib.php, src폴더 만 받아도 됨 1.2. XMLSecurityDSig.php, XMLSecurityKey.php 파일의 namespace 주석처리하거나 환경에 맞게 수정 : 문제없다면 수정 안 해도됨 참고사이트 : https://www.di-mgt.com.au/xmldsig.html 샘플소스 true)); $objKey = new XMLSecurityKey(XMLSecurityKey::RSA_SHA1, array('type'=>'private')); /* load private key */ $ob.. 더보기
인풋데이터 확인하기 ob_start();print_r("\n\n\n======== " . date('Y-m-d H:i:s') . " ========\n");print_r("\n\n_REQUEST\n\n");print_r($_REQUEST);print_r("\n\nheader\n\n");print_r(getallheaders());print_r("\n\nHTTP_RAW_POST_DATA\n\n");print_r($HTTP_RAW_POST_DATA);print_r("\n\nphp://input\n\n");print_r(file_get_contents("php://input")); // 아파치print_r(file_get_contents("php://stdin")); // 아파치가 아닐때$str = ob_get_contents(.. 더보기
구글 자동가입방지 recaptcha 활용하기 1. https://www.google.com/recaptcha 이동하여 신청하기 - Label, Domains, Owners 등을 입력2. Site key, Secret key 확인하기 - site key, secret key 를 확인 3. 해당 기능을 적용 - 해당 기능을 적용할 페이지에 ... ... // site key (6Lf2~~~) ... 이렇게 스크립트와 을 삽입4. 서버측 스크립트 적용 - 클라이언트에서 전달받은 form 값을 처리하는 페이지에 // secret key 와 from 으로 전달받은 g-recaptcha-response 값을 구글로 전달하여 인증처리 $url = 'https://www.google.com/recaptcha/api/siteverify?secret=6Lf2rggT.. 더보기
PHP에서 bit.ly 이용하여 단축 URL 만들기 1. bit.ly 회원가입하기 - 링크 - bit.ly 를 이용한 단축 URL 을 이용하려면 우선 bit.ly 에 회원가입을 해야합니다. 2. apiKey 확인하기 - https://bitly.com/a/settings/advanced 페이지의 하단에 보면 아래 그림과 같이 Login 과 API Key 값을 확인할수 있습니다. 3. 함수 - $login, $apiKey 값에 위에서 확인한 값을 대입한다.function bitly($uri=false) { $login = 'o_xxxxxxxxxx'; $apiKey = 'R_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; if (stripos($uri, 'http://') === false && stripos($uri, 'https://') =.. 더보기
fgetcsv 함수 사용시 한글깨지는 문제 setlocale(LC_CTYPE, 'ko_KR.eucKR'); // 이부분을 추가하면 정상적으로 한글을 처리할수 있음$fp = fopen($file, 'r'); $length = 1000; $delimiter = ','; while ($tmp=fgetcsv($fp, $length, $delimiter)) { ... ... } 더보기
json_decode PHP에서 json_decode 함수를 사용하려면 몇가지 지켜줘야 하는게 있다. $str = "{'key':'value', 'key':'value'}" 이렇게 하면 NULL값이 반환$str = '{"key":"value", "key":"value"}' 이렇게 key와 value 를 큰따옴표(")로 묶어야만 정상적으로 작동한다. 더보기
passbook(패스북) 패스생성 server(서버) 구축하기 1. 인증서 만들기 1.1. 우선 응용 프로그램 > 유틸리티 > 키체인 접근 실행 2. Pass Type ID 만들기2.1. iOS Provisioning portal 이동 다운받은 pass.cer 을 더블클릭해서 키체인 접근에 추가한후WWDR Intermediate certificate 다운받아서 더블클릭해서 키체인 접근에 등록후 위 과정을 통해서 XXXXX.p12 파일과 XXXXX.pem 파일을 생성했으면 지금까지 작업은 정상적으로 마무리된것이다.https://github.com/tschoffelen/PHP-PKPass 이동하기https://github.com/tschoffelen/PHP-PKPass 다운받기 3. 서버세팅하기웹서버에 php-pkpass 파일들과 XXXX.p12, XXXX.pem 파일.. 더보기
해외 웹호스팅 서비스 시간대 변경하기 해외 웹호스팅 서비스를 이용하게 되면 시차가 존재하게됩니다.이문제를 해결하기 위해서는root 폴더에 .htaccess 파일이 있을텐데 (만약에 없다면 하나 만드세요)php_value date.timezone "Asia/Seoul" 을 추가하면 됩니다. 더보기
MAC에서 웹서버 돌리기 링크 다운받기 홈페이지 사실 OSX에는 아파치서버가 포함되어있긴 합니다만 손쉽게 APM 을 설치해서 쓰는게 편합니다 위의 링크를 통해서 MAMP 를 다운 받습니다. 설치를 시작합니다. 여기까지가 설치화면입니다. 이제 실행을 해봅시다. 실행하면 MAMP 버전으로 실행할것인지 MAMP PRO 버전으로 할것인지를 물어봅니다만 무료버전인 MAMP 로 실행합니다. 실행을 하면 웹브라우저에 아래와 같은 화면이 뜰겁니다. 이렇게 하면 설치 및 실행까지 성공한거죠 아래 화면에서 Preferences 를 선택합니다. 아주 간단한 설정을 변경할수 있습니다. 웹서버의 루트디렉토리를 변경하는 화면입니다. 아래의 디렉토리를 그대로 사용해도 좋고 다른 디렉토리로 변경해도 좋습니다. 개인적으로 맥용 APM으로는 이게 가장 편하지 .. 더보기
Ajax에서 parsererror 에러가 발생할경우 $.ajax({ url: 타겟url, type: "POST", dataType: "text", success: function(responseText, statusText) {}, error: function(XMLHttpRequest, textStatus, errorThrown) { alert(textStatus); } }); jQuery의 $.ajax() 를 이용해서 Ajax를 처리하는데 크롬, 파이어폭스, 사파리에서는 잘 처리되는데 ie에서만 자꾸 error 함수가 호출된다. response 를 찍어봐도 200 으로 에러가 아님에도 불구하고.. 원인은 내가 넘겨주는값이 숫자만 넘겨주게 하면서 캐릭터셋을 UTF-8로 지정하지 않아서 생긴문제이다. header("content-type:text/html.. 더보기