php+curl 发送图片处理代码分享

前端技术 2023/09/06 PHP

//上传页面代码

  $url = \"http://192.168.1.100/upload.php?lang=cn\";  #可以get传相应参数
  $file = $path.\'/\'. $Icon; //要上传的文件
  $fields[\'f\'] = \'@\'.$file;
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url );
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
  curl_setopt($ch, CURLOPT_POST, 1 );
  curl_setopt($ch, CURLOPT_POSTFIELDS, $fields );
  curl_exec( $ch );
  if ($error = curl_error($ch) ) {
    die($error);
  }
  curl_close($ch); 

    //接收图片资源

  date_default_timezone_set(\'Asia/Shanghai\'); //设置时区
  $ip = \'\';
  if(getenv(\'HTTP_CLIENT_IP\') && strcasecmp(getenv(\'HTTP_CLIENT_IP\'), \'unknown\')){
        $ip = getenv(\'HTTP_CLIENT_IP\');
    }elseif(getenv(\'HTTP_X_FORWARDED_FOR\') && strcasecmp(getenv(\'HTTP_X_FORWARDED_FOR\'), \'unknown\')){
        $ip = getenv(\'HTTP_X_FORWARDED_FOR\');
    }elseif(getenv(\'REMOTE_ADDR\') && strcasecmp(getenv(\'REMOTE_ADDR\'), \'unknown\')){
        $ip = getenv(\'REMOTE_ADDR\');
    }elseif(isset($_SERVER[\'REMOTE_ADDR\']) && $_SERVER[\'REMOTE_ADDR\'] && strcasecmp($_SERVER[\'REMOTE_ADDR\'], \'unknown\')){
        $ip = $_SERVER[\'REMOTE_ADDR\'];
    }
    preg_match(\"/[\\d\\.]{7,15}/\", $ip, $ipmatches);
    $ip = $ipmatches[0] ? $ipmatches[0] : \'unknown\';

    //驗證請求IP,设置白名单
    $date = date(\"[Y-m-d H:i:s]\");
    $allowip = array(\'192.168.1.100\');
    if(!in_array($ip,$allowip)){
        $ipVal = \"{$date}{$ip}\\n\";
        file_put_contents(\'upload_ip.log\', $ipVal, FILE_APPEN);
        die(-1);
    }

    //接收get传参
    $lang = isset($_REQUEST[\'lang\']) ? $_REQUEST[\'lang\'] : \'CN\'; 
    $uploaddir = \"/data/cdncache/res/gifts/{$lang}/\";
    $uploadfile = $uploaddir . $_FILES[\'f\'][\'name\'];
    if (move_uploaded_file($_FILES[\'f\'][\'tmp_name\'], $uploadfile)) #保存图片成功
    {
        $type = $_FILES[\'f\'][\'type\'];
        $tmp_name = $_FILES[\'f\'][\'tmp_name\'];
        $error = $_FILES[\'f\'][\'error\'];
        $size = $_FILES[\'f\'][\'size\'];
        $log_txt = \' name:\' . $_FILES[\'f\'][\'name\'] . \' type:\' . $type . \' tmp_name:\' . $tmp_name . \' error:\' . $error . \' size:\' . $size . \" hello \" . \' lang:\' . $_REQUEST[\'lang\'];
        $value = \"{$date}{$log_txt}\\n\";
        @file_put_contents(\'upload_ok.log\', $value, FILE_APPEND);
        exit();
    } else {
        $type = $_FILES[\'f\'][\'type\'];
        $tmp_name = $_FILES[\'f\'][\'tmp_name\'];
        $error = $_FILES[\'f\'][\'error\'];
        $size = $_FILES[\'f\'][\'size\'];
        $log_txt = \' name:\' . $_FILES[\'f\'][\'name\'] . \' type:\' . $type . \' tmp_name:\' . $tmp_name . \' error:\' . $error . \' size:\' . $size . \" hello \" . \' lang:\' . $_REQUEST[\'lang\'];
        $value = \"{$date}{$log_txt}\\n\";
        @file_put_contents(\'upload_ng.log\', $value, FILE_APPEND);
        exit();
  }

以上所述就是本文的全部内容了,希望大家能够喜欢。

本文地址:https://www.stayed.cn/item/16121

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。