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

📄 uploads.php

📁 一个全功能的国外博客商业程序
💻 PHP
📖 第 1 页 / 共 2 页
字号:
<?
$page = "uploads.php";
include "header.php";

if($group_info[allow_uploads] != "1") { exit(); }

if(isset($_POST['task'])) { $task = $_POST['task']; } elseif(isset($_GET['task'])) { $task = $_GET['task']; } else { $task = "main"; }

if(isset($_POST['s'])) { $s = $_POST['s']; } elseif(isset($_GET['s'])) { $s = $_GET['s']; } else { $s = "dd"; }

$t = "t";
$d = "dd";
$f = "fd";

if($s == "d") {
$sort = "date";
$d = "dd";
} elseif($s == "dd") {
$sort = "date DESC";
$d = "d";
} elseif($s == "t") {
$sort = "filename";
$t = "td";
} elseif($s == "td") {
$sort = "filename DESC";
$t = "t";
} elseif($s == "f") {
$sort = "filesize";
$f = "fd";
} elseif($s == "fd") {
$sort = "filesize DESC";
$f = "f";
} else {
$sort = "date";
$d = "dd";
$s = "d";
}


if($task == "doupload") {
$file_name = $_FILES['file']['name'];
$file_type = $_FILES['file']['type'];
$file_size = $_FILES['file']['size'];
$file_tempname = $_FILES['file']['tmp_name'];
$file_error = $_FILES['file']['error'];

// REPLACE SPACES, STRIP OTHER BAD CHARS
$file_name = str_replace(" ", "_", $file_name);
$file_name = str_replace("?", "", $file_name);
$file_name = str_replace("&", "", $file_name);
$file_name = str_replace("=", "", $file_name);
$file_name = str_replace("#", "", $file_name);
$file_name = str_replace("%", "", $file_name);
$file_name = str_replace("'", "", $file_name);
$file_name = str_replace("\"", "", $file_name);
$file_name = stripslashes($file_name);


// GET NEW FILE EXTENSION
$ext = strtolower(strrchr($file_name, "."));
$ext = str_replace(".", "", $ext);

// CHECK THAT FIELD IS NOT EMPTY
if(!isset($file_name) OR $file_name == "") {
$errormsg = "<b>$uploads1</b>";
}

// GET EXTENSION LIST
if(!isset($errormsg)) {

$extensions_case = strtolower($group_info[uploads_extensions]);
$extensions = explode(",", $extensions_case);
$extlist = str_replace(",", ", ", $group_info['uploads_extensions']);
$extlist = str_replace(",  ", ", ", $extlist);

// SEARCH FOR NEW FILE EXTENSION IN THE EXTENSION LIST
if(!in_array($ext, $extensions)) {
$errormsg = "<b>$uploads2 $extlist</b>";
}
}



// CHECK COMMON FILES FOR CORRECT MIME TYPES
if(!isset($errormsg)) {
$type = strtolower($file_type);

if($ext == "jpg" OR $ext == "jpeg" OR $ext == "jpe") { 
if($type != "image/jpeg" AND $type != "image/jpg" AND $type != "image/jpe" AND $type != "image/pjpeg" AND $type != "image/pjpg" AND $type != "image/x-jpeg" AND $type != "image/x-jpg") {
$errormsg = $uploads27;
}}

elseif($ext == "gif") { 
if($type != "image/gif" AND $type != "image/x-gif") {
$errormsg = $uploads27;
}}

elseif($ext == "png") { 
if($type != "image/png" AND $type != "image/x-png") {
$errormsg = $uploads27;
}}

elseif($ext == "tiff") { 
if($type != "image/tif" AND $type != "image/tiff") {
$errormsg = $uploads27;
}}

elseif($ext == "bmp") { 
if($type != "image/bmp" AND $type != "image/x-bmp") {
$errormsg = $uploads27;
}}

elseif($ext == "html" OR $ext == "htm") { 
if($type != "text/html") {
$errormsg = $uploads27;
}}

elseif($ext == "css") { 
if($type != "text/css") {
$errormsg = $uploads27;
}}

elseif($ext == "txt") { 
if($type != "text/plain") {
$errormsg = $uploads27;
}}

elseif($ext == "xml") { 
if($type != "text/xml") {
$errormsg = $uploads27;
}}

elseif($ext == "mpeg" OR $ext == "mpg" OR $ext == "mpe") { 
if($type != "video/mpeg" AND $type != "video/x-mpeg") {
$errormsg = $uploads27;
}}

elseif($ext == "mp3" OR $ext == "mp2" OR $ext == "mpga") { 
if($type != "audio/mpeg" AND $type != "audio/x-mpeg") {
$errormsg = $uploads27;
}}

elseif($ext == "kar" OR $ext == "mid" OR $ext == "midi") { 
if($type != "audio/midi" AND $type != "audio/mid") {
$errormsg = $uploads27;
}}

elseif($ext == "aif" OR $ext == "aifc" OR $ext == "aiff") { 
if($type != "audio/x-aiff") {
$errormsg = $uploads27;
}}

elseif($ext == "wav") { 
if($type != "audio/x-wav" AND $type != "audio/wav") {
$errormsg = $uploads27;
}}

elseif($ext == "ram" OR $ext == "ra") { 
if($type != "audio/x-pn-realaudio") {
$errormsg = $uploads27;
}}

elseif($ext == "zip") { 
if($type != "application/zip" AND $type != "application/x-zip" AND $type != "application/x-zip-compressed") {
$errormsg = $uploads27;
}}

elseif($ext == "pdf") { 
if($type != "application/pdf") {
$errormsg = $uploads27;
}}

elseif($ext == "doc") { 
if($type != "application/msword") {
$errormsg = $uploads27;
}}

elseif($ext == "rtf") { 
if($type != "application/rtf") {
$errormsg = $uploads27;
}}

elseif($ext == "rtx") { 
if($type != "application/richtext") {
$errormsg = $uploads27;
}}

elseif($ext == "xls") { 
if($type != "application/x-excel") {
$errormsg = $uploads27;
}}

elseif($ext == "gz") { 
if($type != "application/x-gzip") {
$errormsg = $uploads27;
}}

elseif($ext == "js") { 
if($type != "application/x-javascript") {
$errormsg = $uploads27;
}}

elseif($ext == "pps" OR $ext == "ppt" OR $ext == "ppz") { 
if($type != "application/x-javascript") {
$errormsg = $uploads27;
}}

elseif($ext == "sit") { 
if($type != "application/x-stuffit") {
$errormsg = $uploads27;
}}

elseif($ext == "tar") { 
if($type != "application/x-tar") {
$errormsg = $uploads27;
}}

if(isset($errormsg)) { $errormsg = "<b>$errormsg</b>"; }
}

// CALCULATE SPACE ALLOWED
if(!isset($errormsg)) {
$space_allowed = $group_info[uploads_space] * 1024;

// CALCULATE SPACE USED, PLUS NEW FILE
$files = mysql_query("SELECT * FROM bhost_uploads WHERE u_id='$user_info[u_id]'");
$space_used = 0;
while($file = mysql_fetch_assoc($files)) {
$filesize = @filesize("../uploads/$file[filename]");
$space_used = $space_used + $filesize;
}
$space_used = $space_used + $file_size;

// SHOW ERROR IF OUT OF SPACE, OTHERWISE DO UPLOAD
if($space_used > $space_allowed) {
$errormsg = "<b>$uploads3</b>";
}
}

if(!isset($errormsg)) {
$nowdate = time();
$newfilename = "$user_info[username]_$file_name";
$path = "../uploads/$newfilename";

// FIRST, CHECK FOR AND DELETE ANY DUPLICATE ROWS IN bhost_uploads
$files = mysql_query("SELECT * FROM bhost_uploads WHERE u_id='$user_info[u_id]' AND filename='$newfilename'");
if(mysql_num_rows($files) != 0) {
mysql_query("DELETE FROM bhost_uploads WHERE u_id='$user_info[u_id]' AND filename='$newfilename'");
}

// UPLOAD FILE
if(move_uploaded_file($file_tempname, $path)) {
mysql_query("INSERT INTO bhost_uploads (u_id, filename, filesize, date) VALUES ('$user_info[u_id]', '$newfilename', '$file_size', '$nowdate')");

// GIVE FILE FULL PERMISSIONS
@chmod($path, 0777);

} else {
// FILE FAILED TO UPLOAD
$errormsg = "<b>$uploads4 $path</b>";
}
}

$task = "main";
}







if($task == "delete") {
$f_id = $_GET['f_id'];

if($f_id == "") { exit(); }

// CHECK THAT THIS USER OWNS THIS file
$files = mysql_query("SELECT * FROM bhost_uploads WHERE u_id='$user_info[u_id]' AND f_id='$f_id'");
if(mysql_num_rows($files) == 0) { exit(); }
$file_info = mysql_fetch_assoc($files);

// DELETE file FILE FIRST
if(unlink("../uploads/$file_info[filename]")) {

// NOW DELETE ITS MYSQL ROW
mysql_query("DELETE FROM bhost_uploads WHERE u_id='$user_info[u_id]' AND f_id='$f_id'");

} else {
$errormsg = "<b>$uploads5</b>";
}

$task = "main";
}








if($task == "handlemulti") {
$submit = $_POST['submit'];

// IF POSTING MULTIPLE FILES
if($submit == "$uploads28") {
$files = mysql_query("SELECT f_id, u_id, filename FROM bhost_uploads");
$insertstring = "add_entry.php?f_ids=";
$c = 0;
while($file = mysql_fetch_assoc($files)) {
$var = "handle_$file[f_id]";
  if(isset($_POST[$var])) {
    if($_POST[$var] == "yes") {
      $c++;
      if($c > 1) { $insertstring .= "_"; }
      $insertstring .= "$file[f_id]";
    }
  }
}
if($c > 20) {
$errormsg = "<b>$uploads29</b>";
$task = "main";
} else {
header("Location: $insertstring");
exit();
}}

// IF DELETING MULTIPLE FILES
if($submit == "$uploads24") {
$files = mysql_query("SELECT f_id, u_id, filename FROM bhost_uploads");
while($file = mysql_fetch_assoc($files)) {

⌨️ 快捷键说明

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