Header

  1. View current page

    suritam9님의 노트

Profile_img_60x60_01
1

devday4(2)

  1. 플렉스 소스의 이미지 저장을 위한 php로딩 함수

    1.             private function captureImg():void {
                      var ohSnap:ImageSnapshot = ImageSnapshot.captureImage(img); //img영역의 내용을 캡쳐
                      var base64decodeValue:String = ImageSnapshot.encodeImageAsBase64(ohSnap); // base64_encode
                      if(!saver)
                      {
                          saver = new URLLoader;
                          configureListeners( saver, saveImageHandler);
                      }
                      var request:URLRequest = new URLRequest("saver.php"); //saver.php 호출을 통한 이미지 저장
                      request.method = "post";
                      var param:URLVariables = new URLVariables;
                      param.data = base64decodeValue;
                      param.extension = "jpg"; // 확장자
                      request.data = param;
                      saver.load( request );
                  }
  2. saver.php의 주요 소스

    1. <?php
      $data = $_POST['data']; // base64_encode된 data를 $data변수에 저장
      $extension = $_POST['extension']; // extension 변수를 $extension 변수에 저장
      $fn = $_POST['datetime'];  // 시간으로 받은 변수를 파일 이름 변수로 지정
      if( $data && $extension )
      {
       $updir = "C:/APM_Setup/htdocs/bin-release/Images";  // 저장할 경로
       $filename = $fn.".".$extension; // 저장할 이름
       $file = sprintf("%s/%s",$updir, $filename);
    2. if(file_exists($file)) //파일이 존재하면 지운다
         unlink($file);
        $fp = fopen( $file, "w");
        fwrite($fp, base64_decode($data));  // base64_encode된 data를 decoding하여 이미지 파일로 저장한다.
        fclose($fp);
        echo $file;
    3. }
    4. ?>

 

  1. devday.php로 이동하고, textarea에서 처리되어 저장된 이미지를 img src태그로 로딩한다.

     

    1. <textarea name=bodytext id=bodytext cols=100 rows=4><img src="bin-release/Images/<?=$datetime?>.jpg"></textarea>

     

  2. 포스팅 함수 소스

    1. function DaumOpenAPI_Post($subj, $body, $tag, $token=NULL) {  // 글쓰기 함수
      global $api_url;
      $param = _token_param($token);
      $signed_url = Daum_OpenAPI_Sign($api_url, $param);
      $method_name = 'daum.blog.openapi.newPost.execute';
      $params = array(
      new xmlrpcval(engret($subj), "string"),
      new xmlrpcval(engret($body), "string"),
      new xmlrpcval(engret($tag), "string")
      );
      $xml_msg = new xmlrpcmsg($method_name, $params);
      //echo htmlentities($xml_msg->serialize());//보낸 내용을 확인합니다
      $client = new xmlrpc_client($signed_url);
      $resp = $client->send($xml_msg);
      if ($resp->faultCode()) {
      //echo "error: ".$resp->faultString();
      return FALSE;
      } else {
      $kind = $resp->value()->kindof();
      if ($kind == 'scalar') {
      return $resp->value()->scalarval(); // article no
      } else {
      return FALSE;
      }
      }
      }

     

  3. 참고자료 - 인증 소스

    1. <?php
    2. include "./api_sign.php"; // login.daum 호출 url 을 만들고, 사용자 브라우저를 이 url 로 redirect 하도록 한다.
    3. $api_url = 'https://apis.daum.net/account/login.daum';
      $return_url = "return_login_post.php";
      $api_param = "returl=http://".$_SERVER['HTTP_HOST'] . "/" . $return_url;
    4. $signed_api_call_url = Daum_OpenAPI_Sign ( $api_url, $api_param ); // redirect to https://apis.daum.net/account/login.daum
      header("Location: ".$signed_api_call_url);
      ?>

    [devday 프로젝트 소개서]

History

Last edited on 06/28/2008 03:46 by suritam9

Comments (0)

You must log in to leave a comment. Please sign in.