帮我写前后端分离的文件的上传至mysql的代码
时间: 2023-02-08 20:45:41 浏览: 62
前端文件上传部分代码(假设使用jquery):
```
<form id="file-upload-form" enctype="multipart/form-data">
<input type="file" name="file" id="file-input">
<input type="button" value="上传" id="upload-button">
</form>
<script>
$(document).ready(function(){
$("#upload-button").on("click", function(){
var formData = new FormData($("#file-upload-form")[0]);
$.ajax({
url: "http://yourserver.com/upload", // 文件上传接口地址
type: "POST",
data: formData,
contentType: false,
processData: false,
success: function (res) {
console.log("文件上传成功");
},
error: function (res) {
console.log("文件上传失败");
}
});
});
});
</script>
```
后端文件上传部分代码(假设使用node.js + express + multer):
```
var express = require('express');
var multer = require('multer');
var mysql = require('mysql');
var app = express();
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'upload/') // 文件上传存储路径
},
filename: function (req, file, cb) {
cb(null, file.originalname) // 保存文件名
}
});
var upload = multer({ storage: storage });
app.post('/upload', upload.single('file'), function (req, res, next) {
var file = req.file;
var sql = "INSERT INTO files SET ?";
var values = {
filename: file.filename,
filepath: file.path,
filemimetype: file.mimetype
}
var connection = mysql.createConnection({
host: 'yourhost',
user: 'youruser',
password: 'yourpassword',
database: 'yourdatabase'
});
connection.connect();
connection.query(sql, values, function (error, results, fields) {
if (error) {
console.log(error);
res.status(500).json({err_code: 500 , err_msg: "文件上传失败"});
}else{
res.status(200).json({err_code: 0 , err_msg: "文件上传成功"});
}
connection.end();
});
});
app.listen(3000, function () {
console.log('app is listening