echo "start";// 로그인 체크하는 부분session_start();if(!isset($_SESSION['user_id']) || !isset($_SESSION['user_name'])) { echo ""; exit;}echo "session ok";// 변수 받아오기$msg = $_POST["msg"];echo "msg=[".$msg."]";// DB 시작include "config.php";// 루프 돌아서 gcm을 보내자// 한번에 1000개 까지 보낼수 있다// 헤더 설정$headers = array( 'Content-Type:application/json', // 이거는 구글 api에서 browser로 생성한 키를 입력 'Authorization:key=AI..
PHP로 json_encode하여서 클라이언트에서 응답을 받았는데, android studio 화면상에 보이는 문자와 실제의 문자열의 길이가 달랐다. 그리고 JSONObject의 parse가 자꾸 실패를 하게 되었다. 이렇게 되는 원인을 찾았는데 PHP 소스파일의 인코딩이 UTF-8 with BOM으로 되어 있었다. 이것을 UTF-8로 변경해주면 문제 없이 동작한다. 최근에 atom, vscode등 여러가지 에디터를 변경하면서 생긴 문제이다. 항상 기존의 코드와인코딩이 맞는지를 항상 확인하자.
새로나온 에디터인 Visual Studio Code에서 다음과 같이 PHP파일을 편집하다 보면 에러 메세지가 나올 때가 있다. Cannot validate the php file. The php program was not found. Use the 'php.validate.executablePath' setting to configure the location of 'php' 그럴 때는 파일 > 기본설정 > 사용자 설정 에서 다음과 같이 PHP 실행파일 패스를 입력한다.
if (!function_exists('getallheaders')) { /** * Get all HTTP header key/values as an associative array for the current request. * * @return string[string] The HTTP header key/value pairs. */ function getallheaders() { $headers = array(); $copy_server = array( 'CONTENT_TYPE' => 'Content-Type', 'CONTENT_LENGTH' => 'Content-Length', 'CONTENT_MD5' => 'Content-Md5', ); foreach ($_SERVER as $key => $va..
//지정된 자릿수의 랜덤한 숫자를 반환합니다. 최대 10까지 가능합니다. 4 이면 1000 에서 9999 사이의 랜덤 숫자 function get_rand_number($len=4) { $len = abs((int)$len); if ($len else if ($len > 10) $len = 10; return rand(pow(10, $len - 1), (pow(10, $len) - 1)); } //넘어온 세자리수를 36진수로 변환해서 반환합니다. preg_match_callback 을 통해서만 사용됩니다. function get_simple_36($m){ $str = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'; $div = floor(..
이전에 iOS와 PHP로도 인앱 구매 영수증 서버 검증을 진행했는데 이번에는 Android에도 적용해 보자. 일단 플레이스토어에 가면 다음과 같이 [서비스 및 API] > [라이센스 및 인앱 결제] 항목에 Base64 인코딩된 RSA 공개키가 있다. 이것을 .pem형식으로 다음과 같이 저장한다. 물론 PHP의 chunk_split함수를 이용해도 된다. 단, 설명문에 RSA 공개키라고 하더라도 반드시 그냥 PUBLIC KEY라고 입력해야 한다. -----BEGIN PUBLIC KEY----- 한 줄에 64바이트씩 잘라서 입력 -----END PUBLIC KEY----- 다음은 안드로이드에서 구매후 $signature와 $data를 보내줘야 한다. 주의할 사항은 $data는 original json을 그대로..
//iOS -(void)serverVerfication:(SKPaymentTransaction*)transaction andRestore:(BOOL)isRestore { NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults]; NSString *user_id = [userDefault objectForKey:@"uid"]; NSString *item_id = transaction.payment.productIdentifier; // 추가된 order_id(구글과 맞추기 위해서 용어를 변경하였다.) NSString *order_id; int restore = 0; if(isRestore == YES) { order_id = transacti..
1. 설치하기 sudo apt-get install phpmyadmin 2. 설정하기 sudo vi /etc/apache2/apache2.conf 맨 마직막에 아래 구문 추가 1. # Enable PhpMyAdmin 2. Include /etc/phpmyadmin/apache.conf Apache 재시작 sudo /etc/init.d/apache2 restart PhpMyAdmin 접속 http://localhost/phpmyadmin 3. 삭제하기 sudo apt-get remove phpmyadmin
- Total
- Today
- Yesterday