zoukankan      html  css  js  c++  java
  • php模拟POST请求提交数据

    php模拟POST请求提交数据

    1.基于fsockopen

    function phppost00($jsonString){
    
    $URL='https://www.jy.com/phppostok.php';
    $post_data['clientname'] = $jsonString;
    $referrer="";
    $URL_Info=parse_url($URL);
    
    foreach($post_data as $key=>$value)
    
    $values[]="$key=".$value;
     
    $data_string=implode("&",$values);
    
    // Find out which port is needed - if not given use standard (=80)
    if(!isset($URL_Info["port"])) $URL_Info["port"]=80;
    // building POST-request:
    $request='';
    $request.="POST ".$URL_Info["path"]." HTTP/1.1
    ";
    $request.="Host: ".$URL_Info["host"]."
    ";
    //$request.="Referer: $referrer
    ";
    $request.="Content-type: application/x-www-form-urlencoded
    ";
    $request.="Content-length: ".strlen($data_string)."
    ";
    $request.="Connection: close
    ";
    $request.="
    ";
    $request.=$data_string."
    ";
    $fp = fsockopen($URL_Info["host"],$URL_Info["port"]);
    fputs($fp, $request);
    $result='';
    while(!feof($fp)) {
    $result .= fgets($fp, 128);
    }
    fclose($fp);
    }

    2.基于curl_init

    function phppost($jsonString){
        $url='http://www.jy.com/phppostok.php';
        $fields=$jsonString;
        $ch=curl_init();
        curl_setopt($ch,CURLOPT_POST, true);
        curl_setopt($ch,CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch,CURLOPT_URL,$url);
        curl_setopt($ch,CURLOPT_POST,count($fields));
        curl_setopt($ch,CURLOPT_POSTFIELDS,$fields);
        $response=curl_exec($ch);
        curl_close($ch);
        $result = json_decode($response,true);
        
        return $result;
    }
  • 相关阅读:
    627. whose 和 who's
    628. why 和why not
    629 will: 各种用法tyg
    enChapter 3 Underlying Technologiesp
    使用VIEWER.JS进行简单的图片预览
    outlook2010设置失败后重新设置
    新增和编辑clob字段
    金钱大写
    pivot 与 unpivot 函数是SQL05新提供的2个函数
    从函数到委托
  • 原文地址:https://www.cnblogs.com/keleyu/p/3364995.html
Copyright © 2011-2022 走看看