Загрузите один файл изображения в мой каталог и сохраните оригинальное имя файла mysql db - PullRequest
0 голосов
/ 07 апреля 2019

У меня проблемы с загрузкой изображений с помощью multer. Я хочу загрузить изображение и сохранить его в каталоге "/ uploads / images". Я не могу загрузить изображение в желаемое место назначения. Несмотря на то, что код не выдает никакой ошибки, изображение просто не появляется в «/ uploads / images». Может кто-нибудь дать мне несколько советов? Спасибо!

var multer = require('multer')

var Storage = multer.diskStorage({
    destination: function(req, file, callback) {
        callback(null, "./uploads/images");
    },
    filename: function(req, file, callback) {
        callback(null, file.originalname);
    }
});

var upload = multer({
    storage: Storage
});
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())

app.post('/admin', upload.single('file'), function(req, res) {
    var start_time = convertTimeStringTo24Hours(req.body.starttime)
    var end_time = convertTimeStringTo24Hours(req.body.endtime)
    var attendee = ''
    if (req.body.attendee == '') {
        // default value for attendee
        attendee = 100
    } else {
        attendee = req.body.attendee
    }
    var hiddensignup = 0
    if (req.body.hiddensignup == 'on') {
        hiddensignup = 1
    }
    var sql =
        'INSERT INTO events' +
        ' (name, description, start_time, end_time, location, max_capacity, hidden_sign_up, other, image_path)' +
        ' VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)'
    var values = [req.body.eventname, req.body.description, req.body.date + ' ' + start_time,
        req.body.date + ' ' + end_time, req.body.location, attendee, hiddensignup, req.body.other, '/uploads/images' + req.body.file
    ]

    con.query(sql, values, function(err, result) {
        if (err) throw err
        res.redirect('/admin')
    })
})

...