[PHP] curl POST 전송 때 파라미터 전달되지 않는 경우 해결법

아래와 같이 PHP에서 POST 요청을 curl 로 처리할 때 $param 배열의 파라미터가 제대로 전달되지 않는 경우가 있다. <?php $url = ‘https://example.com/api’; $param = array( ‘mid’ => $mid, ‘key’ => $key, ‘token’ => $token ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $param); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); […]

Read More

nginx access log 에 POST 데이터 기록하기

웹서비스 개발 중 디버그나 서비스 공격 등이 있을 때 원인을 파악하고자 사용자의 데이터를 분석할 필요가 있다. 그러나 기본적인 access log 에는 사용자가 직접 요청한 POST 등의 데이터는 기록되지 않기 때문에 nginx access log 에 POST 데이터를 기록하도록 해봤다. 우선 nginx.conf 파일의 http 블럭에 아래와 같이 log 포맷을 지정한다. log_format request_log ‘$remote_addr – $remote_user [$time_local] “$request” […]

Read More

[PHP] post로 넘겨받은 값을 다른 페이지에 post로 넘기기

이런 경우가 있다. PHPWord를 이용해 워드 파일을 생성하고 다운로드하는 것인데 사용자가 폼에서 입력한 값을 이용해 워드파일을 생성해야 한다. 그런데 워드파일을 다운로드 후에 완료 안내 페이지를 보여줘야할 경우가 생겼다. 자바스크립트나 기타 여러 방법으로 다운로드 후 완료 페이지로 이동을 하도록 하면 되는데.. 여기서 문제가 발생한다. 워드파일을 생성하는 파일에는 php 코드외에 html 태그가 들어가 있으면 파일 다운로드도 되지 […]

Read More

form의 값이 두 번 전송되는 경우

얼마전 jQuery를 이용하여 폼의 값을 ajax방식으로 처리하는 코드를 작성했는데 폼의 값을 넘기면 두 개의 레코드가 등록되는 문제가 발생한 적이 있다. submit 버튼이 두번 클릭돼서 그런가 싶어 한번 클릭하면 disabled 시켜보기도 했는데 마찬가지 결과가 나왔다. ajax 방식이 아닐 때는 문제가 생기지 않는 걸로 봐서 ajax 관련 코드가 문제인 걸로 파악하고 내가 제일 잘하는 것.. 무한 삽질을 […]

Read More

[PHP] UTF-8에서 EUC-KR 환경으로 폼 전송시 문자셋 변환

요즘은 거의 UTF-8 환경으로 작업을 하는데.. 결제 모듈 같은 거 연동하려면 아직도 EUC-KR 환경이 필요하다. 이번에도 UTF-8 상태의 폼에서 EUC-KR 페이지로 데이터를 넘겨야 하는 경우가 발생했다. 암호화를 하는 파일이 EUC-KR에서만 제대로 작동을 해서 어떻게 할 수 없는 상황이었다. 바이너리 파일은 내가 만든 게 아니니까.. 이런 상황에서 그냥 데이터를 전송하면 한글의 경우 깨져서 처리를 할 수가 없게 된다. […]

Read More