1, 'msg' => '上传失败:' . $file['error']); echo json_encode($result); } else { $filesize = $file['size'] / 2048; // 将文件大小转换为 KB if ($filesize > 2048) { // 文件大小不能超过 1MB $result = array('code' => 2, 'msg' => '上传失败:文件大小不能超过 1MB'); echo json_encode($result); } else if (!in_array($extension, $allowext)) { $result = array('code' => 3, 'msg' => '上传失败:扩展名不支持,请选择 GIF、JPG、JPEG 或 PNG 文件'); echo json_encode($result); } else { $upload_dir = '/var/www/uploads/'; // 上传文件保存的目录 if (!file_exists($upload_dir)) { mkdir($upload_dir, 0777, true); // 如果目录不存在,则创建目录 } $filename = uniqid() . '.' . $extension; // 生成唯一的文件名 $filepath = $upload_dir . $filename; // 文件上传的目标路径 if (move_uploaded_file($file['tmp_name'], $filepath)) { // 将临时文件移动到目标路径 $result = '["\u4e0a\u4f20\u6210\u529f"]'; $result_arr = json_decode($result, true); echo $result_arr[0]; // 输出:上传成功 // 记录上传日志 $log_file = 'D:\phpstudy_pro\logs\upload.log'; // 日志文件路径 $log_content = "[" . date("Y-m-d H:i:s") . "] " . $filename . " 上传成功\n"; if (!file_exists($log_file)) { // 如果日志文件不存在,则创建日志文件 touch($log_file); chmod($log_file, 0666); } file_put_contents($log_file, $log_content, FILE_APPEND); } else { $result = array('code' => 4, 'msg' => '上传失败:移动文件时出错'); echo json_encode($result); // 记录上传日志 $log_file = 'D:\phpstudy_pro\logs\upload.log'; // 日志文件路径 $log_content = "[" . date("Y-m-d H:i:s") . "] " . $filename . " 上传失败\n"; if (!file_exists($log_file)) { // 如果日志文件不存在,则创建日志文件 touch($log_file); chmod($log_file, 0666); } file_put_contents($log_file, $log_content, FILE_APPEND); } } } } ?> 修改这段代码,提交成功时显示文件名称,文件类型,文件大小,文件存储路径
时间: 2023-05-13 18:05:57 浏览: 210
修改后的代码如下:
<?php
header('Content-Type: application/json; charset=utf-8');
$allowext = array('gif', 'jpg', 'jpeg', 'png'); // 允许上传的文件扩展名
if (!isset($_FILES['file'])) {
$result = array('code' => 1, 'msg' => '上传失败:未选择文件');
echo json_encode($result);
} else {
$file = $_FILES['file'];
$extension = strtolower(pathinfo($file['name'], PATHINFO_EXTENSION)); // 获取文件扩展名
if ($file['error'] > 0) {
$result = array('code' => 1, 'msg' => '上传失败:' . $file['error']);
echo json_encode($result);
} else {
$filesize = $file['size'] / 1024; // 将文件大小转换为 KB
if ($filesize > 1024) { // 文件大小不能超过 1MB
$result = array('code' => 2, 'msg' => '上传失败:文件大小不能超过 1MB');
echo json_encode($result);
} else if (!in_array($extension, $allowext)) {
$result = array('code' => 3, 'msg' => '上传失败:扩展名不支持,请选择 GIF、JPG、JPEG 或 PNG 文件');
echo json_encode($result);
} else {
$upload_dir = '/var/www/uploads/'; // 上传文件保存的目录
if (!file_exists($upload_dir)) {
mkdir($upload_dir, 0777, true); // 如果目录不存在,则创建目录
}
$filename = uniqid() . '.' . $extension; // 生成唯一的文件名
$filepath = $upload_dir . $filename; // 文件上传的目标路径
if (move_uploaded_file($file['tmp_name'], $filepath)) { // 将临时文件移动到目标路径
$result = array(
'code' => 0,
'msg' => '上传成功',
'filename' => $file['name'],
'filetype' => $extension,
'filesize' => $filesize . 'KB',
'filepath' => $filepath
);
echo json_encode($result);
// 记录上传日志
$log_file = 'D:\phpstudy_pro\logs\upload.log'; // 日志文件路径
$log_content = "[" . date("Y-m-d H:i:s") . "] " . $filename . " 上传成功\n";
if (!file_exists($log_file)) {
// 如果日志文件不存在,则创建日志文件
touch($log_file);
chmod($log_file, 0666);
}
file_put_contents($log_file, $log_content, FILE_APPEND);
} else {
$result = array('code' => 4, 'msg' => '上传失败:移动文件时出错');
echo json_encode($result);
// 记录上传日志
$log_file = 'D:\phpstudy_pro\logs\upload.log'; // 日志文件路径
$log_content = "[" . date("Y-m-d H:i:s") . "] " . $filename . " 上传失败\n";
if (!file_exists($log_file)) {
// 如果日志文件不存在,则创建日志文件
touch($log_file);
chmod($log_file, 0666);
}
file_put_contents($log_file, $log_content, FILE_APPEND);
}
}
}
}
?>
修改后的代码在上传成功时会返回文件名称、文件类型、文件大小、文件存储路径等信息。
阅读全文