我正在尝试创建一个相当简单的(理论上)文件上传“过程”。我浏览了该网站,虽然有一些我需要的片段,但似乎没有任何效果!
基本上,我正在尝试创建一个处理如下的函数:
- 获取文件扩展名
- 获取文件名
- 组合文件名、clientID 和扩展名
- 检查目标目录是否存在。如果没有,请创建它。
- 将文件(以新名称)移动到目录中
我的文件结构如下:
- 根
- 行政
- 上传
- 客户端上传
- $客户ID
- 客户端上传
- 上传
- 行政
这是我所拥有的:
<?php
include("dbconnect.php");
error_reporting(-1); // ALL messages and
ini_set('display_errors', 'On');
if($_GET['clientID']){
//This function separates the extension from the rest of the file name and returns it
function findexts ($filename)
{
$filename = strtolower($filename) ;
$exts = split("[/\\.]", $filename) ;
$n = count($exts)-1;
$exts = $exts[$n];
return $exts;
}
//Get filename function
$filename = "test"; //I dont know how to create this function at the moment
return $filename;
//This applies the function to our file
$ext = findexts ($_FILES['uploaded']['name']) ;
// we will be using the clientID as the new folder and adding it into the filename
$clientID = mysql_real_escape_string((int)$_GET['clientID']);
//merge filename
$filename2 = $filename."_".$clientID.".";
//Scan for existing directory
$folder = '../admin/uploads/client_uploads/'.$username.'/';
if (is_dir("$folder") == false) {
mkdir("$folder", 0777);
echo "Directory created";
}
//This assigns the subdirectory you want to save into... make sure it exists!
$target = "admin/client_uploads/$clientID";
//This combines the directory, the random file name, and the extension
$target = $target . $filename2.$ext;
//Move file under new name
if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target))
{
echo "The file has been uploaded as ".$filename2.$ext;
}
else
{
echo "Sorry, there was a problem uploading your file.";
}
}
?>
我没有收到任何错误消息(尽管我已经明确要求它们)并且我最终得到一个空白屏幕。文件夹没有在我的服务器上的任何地方创建,也没有任何反应。
有任何想法吗?提前致谢。