上传照片 controller
时间: 2023-11-18 14:05:57 浏览: 28
我不确定您想要的语言是什么,因此我将提供以下两种常见的Web开发语言中的上传照片控制器示例:
PHP:
```
<?php
if (isset($_POST['submit'])) {
$file = $_FILES['image'];
$fileName = $_FILES['image']['name'];
$fileTmpName = $_FILES['image']['tmp_name'];
$fileSize = $_FILES['image']['size'];
$fileError = $_FILES['image']['error'];
$fileType = $_FILES['image']['type'];
$fileExt = explode('.', $fileName);
$fileActualExt = strtolower(end($fileExt));
$allowed = array('jpg', 'jpeg', 'png');
if (in_array($fileActualExt, $allowed)) {
if ($fileError === 0) {
if ($fileSize < 1000000) {
$fileNameNew = uniqid('', true).".".$fileActualExt;
$fileDestination = 'uploads/'.$fileNameNew;
move_uploaded_file($fileTmpName, $fileDestination);
header("Location: index.php?uploadsuccess");
} else {
echo "Your file is too big!";
}
} else {
echo "There was an error uploading your file!";
}
} else {
echo "You cannot upload files of this type!";
}
}
```
Node.js:
```
const multer = require('multer');
const storage = multer.diskStorage({
destination: function(req, file, cb) {
cb(null, 'uploads/');
},
filename: function(req, file, cb) {
cb(null, Date.now() + '-' + file.originalname);
}
});
const upload = multer({ storage: storage });
app.post('/upload', upload.single('image'), (req, res) => {
if (req.file) {
res.send('File uploaded successfully!');
} else {
res.send('There was an error uploading your file!');
}
});
```
这些示例假设您的网站具有用于上传照片的表单,其中具有名称为“image”的文件输入字段,并且您希望将上传的文件存储在名为“uploads”的文件夹中。 这些控制器还包括一些文件验证和错误处理,以确保上传的文件符合您的要求。