sub_title
 PHP
제   목 fsockopen 함수를 이용해서 웹사이트에 데이터 전송하기
작성자 높이뜬새 등록일 2009-03-06 19:34:50 조회수 11,590
fsockopen 함수를 이용해서 타 웹사이트에 데이터 전송하기

※ 경고
높이뜬새의 모르는 사람이 없는 팁시리즈 입니다.
이 팁시리즈는 지면낭비라는 항의시에 즉각 중단됩니다.

fsockopen 함수를 이용해서 타 웹사이트에 데이터를 전송하는 간단한 소스입니다. 그런데 보내는 페이지에서 데이터를 전송할때, 전송방식을 POST로 지정하든, GET으로 지정하든 받는 페이지에서는 GET으로만 받아지네요. POST로 받게
되면, 레코드는 삽입되는데, 값이 공백으로 삽입됩니다. 제 소스뿐만 아니라, 외국사이트에서 소스 몇개 받아봤는데, 증상이 비슷했습니다.

허접때기 소스라서 참조하실 분이 있을려나 모르겠습니다. 아! 소스내에 "webmadang.net"부분은 마땅한 웹사이트명이 없어서 집어 넣은 것 뿐이지 실제 테스트는 다른 웹사이트를 이용해서 테스트 했습니다.

보내는 페이지
<?php

   $host = "www.webmadang.net";
   $method = "GET";
   $path = "/testok.php";
   $data = "data1=aaaaaaaa&data2=bbbbbbb";

   $buffer = sendData($host, $method, $path, $data);
   echo$buffer;

   function sendData($host,$method,$path,$data)
  {

       $method = strtoupper($method);
       if( $method="GET"){
            $path .= '?' . $data;
       }

       $fp = fsockopen($host, 80, $errno, $errstr);

       if(!$fp)
      {
           echo "$errstr ($errno)<br>\n";
       } else
      {
          $out = "$method $path HTTP/1.1\r\n";
          $out .= "Host: $host\r\n";
          $out .= "User-Agent: " . $_SERVER['HTTP_USER_AGENT'] . "\r\n";
          $out .= "Content-type: application/x-www-form-urlencoded\r\n";
          $out .= "Content-length: ".strlen($data)."\r\n";
          $out .= "Connection: close\r\n\r\n";
          $out .= "$data\r\n\r\n";

          fwrite($fp, $out);
          while(!feof($fp))
          {
              $line = fgets($fp,1024);
              $buffer .= $line;
           }
          fclose($fp);
      }

      return $buffer;
   }

?>



받는 페이지
<?php

   $data1 = $_GET['data1'];
   $data2 = $_GET['data2'];

   $con = mysql_connect("localhost", "myuser", "password") or die ("접속실패");;
   mysql_select_db ("defaultdb", $con);

   $sql = "INSERT INTO test01 SET ";
   $sql = $sql . " data1 ='$data1', ";
   $sql = $sql . " data2 ='$data2' ";

   $result = mysql_query($sql);

   if($result) echo"입력성공";
?>


From : 높이뜬새(www.webmadang.net)

 
2
    
 
0
        list
 
※ 짧은 댓글일수록 예의를 갖추어 작성해 주시기 바랍니다.
line
reply cancel
 
번호 제목 글쓴이 추천 조회 날짜
2  PHP fsockopen 함수를 이용해서 특정 페이지 읽어오기   admin 웹마당넷 1 / 0 6882 2015-06-26
1  fsockopen 함수를 이용해서 웹사이트에 데이터 전송하기   member 높이뜬새 2 / 0 11590 2009-03-06
list write