Javascript 使用当前时间将文件上载到文件夹
我已经成功创建了一个文件上传系统 但是如何将上载的文件移动到具有随机名称的文件夹中?(当前时间) index.php:Javascript 使用当前时间将文件上载到文件夹,javascript,php,html,file-upload,Javascript,Php,Html,File Upload,我已经成功创建了一个文件上传系统 但是如何将上载的文件移动到具有随机名称的文件夹中?(当前时间) index.php: <!doctype html> <body> <form action="file-up.php" method="post" enctype="multipart/form-data"> <table> <tr><td>File:</td><
<!doctype html>
<body>
<form action="file-up.php" method="post" enctype="multipart/form-data">
<table>
<tr><td>File:</td><td><input type="file" name="myfile"></td></tr>
<tr><td> </td><td><input type="submit" value="Upload"></td></tr>
</table>
</div>
</form>
</body>
</html>
文件:
file-up.php:
<?php
$time = new DateTime();
$time->format('YmdHis');
$upload_dir = "uploads/";// . $time;
if (isset($_FILES["myfile"])) {
if ($_FILES["myfile"]["error"] > 0) {
echo "Error: " . $_FILES["file"]["error"] . "<br>";
} else {
move_uploaded_file($_FILES["myfile"]["tmp_name"], $upload_dir . $_FILES["myfile"]["name"]);
echo "Uploaded File: " . $_FILES["myfile"]["name"];
}
}
?>
您可以在检查后使用函数和函数
$upload\u dir=“uploads/”.date('YmdHis');
如果(!is_dir($upload_dir))
{
mkdir($upload_dir);
}
如果(isset($\u文件[“myfile”])){
如果($\u文件[“我的文件”][“错误”]>0){
echo“Error:”.$\u文件[“file”][“Error”]。“
”;
}否则{
移动上传的文件($\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\;
echo“上传的文件:”.$\u文件[“我的文件”][“名称”];
}
}
尝试此工作代码
<?php
$time = new DateTime();
$time->format('YmdHis');
//$upload_dir = "uploads/";// . $time;
$folder_name=date('mds');
$new_folder=mkdir($folder_name, 0777, true);
if(file_exists($new_folder)){
echo "Folder already exist";
}
$upload_dir = $folder_name.'/';
if (isset($_FILES["myfile"])) {
if ($_FILES["myfile"]["error"] > 0) {
echo "Error: " . $_FILES["file"]["error"] . "<br>";
} else {
if(move_uploaded_file($_FILES["myfile"]["tmp_name"], $upload_dir. $_FILES["myfile"]["name"])){
echo "Uploaded File: " . $_FILES["myfile"]["name"];
} else {
echo $new_folder .'/'. $_FILES["myfile"]["name"];
echo "Folder created file not uploaded";
}
}
}
?>
您应该检查文件扩展名,否则可以上载PHP文件或类似文件。它确实创建了文件夹,但文件在文件夹之外。尝试使用绝对路径,而不是使用日期时间创建文件夹,而不是使用日期时间名称创建文件我的错误,我想念阅读等待会让你知道两分钟Fabio让我知道以上我修改的代码,让我知道这是否适合你。欢迎快乐编码:)
<?php
$time = new DateTime();
$time->format('YmdHis');
//$upload_dir = "uploads/";// . $time;
$folder_name=date('mds');
$new_folder=mkdir($folder_name, 0777, true);
if(file_exists($new_folder)){
echo "Folder already exist";
}
$upload_dir = $folder_name.'/';
if (isset($_FILES["myfile"])) {
if ($_FILES["myfile"]["error"] > 0) {
echo "Error: " . $_FILES["file"]["error"] . "<br>";
} else {
if(move_uploaded_file($_FILES["myfile"]["tmp_name"], $upload_dir. $_FILES["myfile"]["name"])){
echo "Uploaded File: " . $_FILES["myfile"]["name"];
} else {
echo $new_folder .'/'. $_FILES["myfile"]["name"];
echo "Folder created file not uploaded";
}
}
}
?>