⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 upload.php

📁 简介:IceBB是一个强大
💻 PHP
字号:
<?php//******************************************************//
//           /////////                 ////   /////
//              //                    // //  //  //
//             //      /////  ////// ////   ////
//            //      //     ////   //  // //  //
//        /////////  /////  ////// /////  /////
//******************************************************//
// icebb.net // 1.0 Beta 7
//******************************************************//
// upload class
// $Id: upload.php 1 2006-04-25 22:10:16Z mutantmonkey $
//******************************************************//if(!defined('IN_ICEBB')){	die('This file may not be accessed directly.');}class Upload {	var $temp_file_name;	var $file_name;	var $upload_dir;	var $upload_log_dir;	var $max_file_size;	var $ext_array;	function validate_extension() {		$file_name = trim($this->file_name);		$extension = strtolower(strrchr($file_name,"."));		$ext_array = $this->ext_array;		$ext_count = count($ext_array);		if($file_name) {			if (!$ext_array) {				return true;			}          else {				foreach ($ext_array as $key => $value) {					$first_char = substr($value,0,1);						if($first_char <> ".") {							$extensions[] = ".".strtolower($value);						}                         else {							$extensions[] = strtolower($value);						}				}				foreach($extensions as $key => $value) {					if($value == $extension) {						$valid_extension = "TRUE";					}								}				if($valid_extension) {					return true;				}               else {					return false;				}			}		}     else {			return false;		}	}	function validate_size() {		$temp_file_name = trim($this->temp_file_name);		$max_file_size = trim($this->max_file_size);		if($temp_file_name) {			$size = filesize($temp_file_name);				if($size > $max_file_size) {					return false;																		}               else {					return true;				}		}     else {			return false;		}		}	function existing_file() {		$file_name = trim($this->file_name);		$upload_dir = $this->get_upload_directory();		if($upload_dir == "ERROR") {			return true;		}     else {			$file = $upload_dir . $file_name;			if(file_exists($file)) {				return true;			}          else {				return false;			}		}		}	function get_file_size() {		$temp_file_name = trim($this->temp_file_name);		$kb = 1024;		$mb = 1024 * $kb;		$gb = 1024 * $mb;		$tb = 1024 * $gb;			if($temp_file_name) {				$size = filesize($temp_file_name);					if($size < $kb) {						$file_size = "$size Bytes";					}					elseif($size < $mb) {						$final = round($size/$kb,2);						$file_size = "$final KB";					}					elseif($size < $gb) {						$final = round($size/$mb,2);						$file_size = "$final MB";					}					elseif($size < $tb) {						$final = round($size/$gb,2);						$file_size = "$final GB";					}                    else {						$final = round($size/$tb,2);						$file_size = "$final TB";					}			}          else {				$file_size = "ERROR: NO FILE PASSED TO get_file_size()";			}			return $file_size;	}	function get_max_size() {		$max_file_size = trim($this->max_file_size);		$kb = 1024;		$mb = 1024 * $kb;		$gb = 1024 * $mb;		$tb = 1024 * $gb;		if($max_file_size) {			if($max_file_size < $kb) {				$max_file_size = "max_file_size Bytes";			}			elseif($max_file_size < $mb) {				$final = round($max_file_size/$kb,2);				$max_file_size = "$final KB";			}			elseif($max_file_size < $gb) {				$final = round($max_file_size/$mb,2);				$max_file_size = "$final MB";			}			elseif($max_file_size < $tb) {				$final = round($max_file_size/$gb,2);				$max_file_size = "$final GB";			}          else {				$final = round($max_file_size/$tb,2);				$max_file_size = "$final TB";			}		}     else {			$max_file_size = "ERROR: NO SIZE PARAMETER PASSED TO  get_max_size()";		}		return $max_file_size;	}	function get_upload_directory() {		$upload_dir = trim($this->upload_dir);		if($upload_dir) {			$ud_len = strlen($upload_dir);			$last_slash = substr($upload_dir,$ud_len-1,1);				if($last_slash <> "/") {					$upload_dir = $upload_dir."/";				}               else {					$upload_dir = $upload_dir;				}				$handle = @opendir($upload_dir);					if($handle) {						$upload_dir = $upload_dir;						closedir($handle);					}                    else {						$upload_dir = "ERROR";					}		}     else {			$upload_dir = "ERROR";		}		return $upload_dir;	}	function get_upload_log_directory() {		$upload_log_dir = trim($this->upload_log_dir);		if($upload_log_dir) {			$ud_len = strlen($upload_log_dir);			$last_slash = substr($upload_log_dir,$ud_len-1,1);				if($last_slash <> "/") {					$upload_log_dir = $upload_log_dir."/";				}               else {					$upload_log_dir = $upload_log_dir;				}				$handle = @opendir($upload_log_dir);					if($handle) {						$upload_log_dir = $upload_log_dir;						closedir($handle);					}                    else {						$upload_log_dir = "ERROR";					}		}     else {			$upload_log_dir = "ERROR";		}		return $upload_log_dir;	}	function upload_file_no_validation() {		$temp_file_name = trim($this->temp_file_name);		$file_name = trim(strtolower($this->file_name));		$upload_dir = $this->get_upload_directory();		$upload_log_dir = $this->get_upload_log_directory();		$file_size = $this->get_file_size();		$ip = trim($_SERVER['REMOTE_ADDR']);		$cpu = gethostbyaddr($ip);		$m = date("m");		$d = date("d");		$y = date("Y");		$date = date("m/d/Y");		$time = date("h:i:s A");		if(($upload_dir == "ERROR") OR ($upload_log_dir == "ERROR")) {			return false;		}     else {			if(is_uploaded_file($temp_file_name)) {				if(move_uploaded_file($temp_file_name,$upload_dir . $file_name)) {					$log = $upload_log_dir.$y."_".$m."_".$d.".txt";					$fp = fopen($log,"a+");					fwrite($fp,"$ip-$cpu | $file_name | $file_size | $date | $time");					fclose($fp);					return true;				}               else {					return false;					}			}          else {				return false;			}		}	}	function upload_file_with_validation() {		$temp_file_name = trim($this->temp_file_name);		$file_name = trim(strtolower($this->file_name));		$upload_dir = $this->get_upload_directory();		$upload_log_dir = $this->get_upload_log_directory();		$file_size = $this->get_file_size();		$ip = trim($_SERVER['REMOTE_ADDR']);		$cpu = gethostbyaddr($ip);		$m = date("m");		$d = date("d");		$y = date("Y");		$date = date("m/d/Y");		$time = date("h:i:s A");		$valid_user = $this->validate_user();		$valid_size = $this->validate_size();		$valid_ext = $this->validate_extension();		$existing_file = $this->existing_file();		if(($upload_dir == "ERROR") OR ($upload_log_dir == "ERROR")) {			return false;		}		if((((!$valid_user) OR (!$valid_size) OR (!$valid_ext) OR ($existing_file)))) {			return false;		}     else {			if(is_uploaded_file($temp_file_name)) {				if(move_uploaded_file($temp_file_name,$upload_dir . $file_name)) {					$log = $upload_log_dir.$y."_".$m."_".$d.".txt";					$fp = fopen($log,"a+");					fwrite($fp,"$ip-$cpu | $file_name | $file_size | $date | $time");					fclose($fp);					return true;				}               else {					return false;				}			}          else {				return false;			}		}	}}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -