//上传页面代码
$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();
}
以上所述就是本文的全部内容了,希望大家能够喜欢。
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!