1
我正尝试在上传文件夹内创建一个新文件夹,以便用户可以将文件上传到自己的文件夹。 我可以使用PHP来做到这一点,或者我需要在MYSQL中使用“LONGBLOB”列吗? 我读过,这不是好的做法,以存储图像在你的数据库将文件上传到用户文件夹
<?php
header('Content-Type: application/json');
$succeeded = [];
$failed =[];
$uploaded = [];
$allowed = ['png', 'gif', 'jpg'];
if(!empty($_FILES["file"])) {
foreach ($_FILES['file']['name'] as $key => $name) {
if ($_FILES['file']['error'][$key] === 0) {
$temp = $_FILES['file']['tmp_name'][$key];
$ext = explode('.', $name);
$ext = strtolower(end($ext));
$file = md5_file($temp) . time() . '.' . $ext;
if (in_array($ext, $allowed) === true && move_uploaded_file($temp, "uploads/{$file}") === true) {
$succeeded[] = array(
'name' => $name,
'file' => $file
);
}else{
$failed[] = array(
'name' => $name);
}
}
}
}
if (!empty($_POST['ajax'])) {
echo json_encode(array(
'succeeded' => $succeeded,
'failed' => $failed));
}
?>
您可以使用PHP轻松地为每个用户创建一个文件夹,比分贝更好的办法 - 或许是存储在数据库中的文件和某种散列在下载链接或者用一个参考。实际上,将图像作为BLOBS存储在数据库中会使其增长到可能的巨大尺寸 – RamRaider