router.post('/products/:id', imgUpload.upload.single('productImg'), async (req, res) => {
const id = req.body.id;
let productImg = req.body.productImg;
if (req.file) {
productImg = req.file.filename;
const filePathToDelete = './public/imgs/products/' + req.body.productImg;
if (fs.existsSync(filePathToDelete)) {
fs.unlink(filePathToDelete, err => {
if (err) {
console.error(err);
}
});
}
}
const name = req.body.productName;
const price = req.body.productPrice;
const desc = req.body.productDescription;
const isHome = req.body.isHome == "on" ? 1 : 0;
const isActive = req.body.isActive == "on" ? 1 : 0;
try {
await db.execute("UPDATE `nodedb`.`products` SET `name`=?,`price`=?,`img`=?,`desc`=?,`isHome`=?,`isActive`=? WHERE (`id`=?);",
[name, price, productImg, desc, isHome, isActive, id]);
res.redirect('/admin/products?action=edit');
} catch (err) {
console.log(err);
res.status(500).send('İşlem sırasında bir hata oluştu.');
}
});dene bakalım bi
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
at new NodeError (node:internal/errors:399:5)
at ServerResponse.setHeader (node:_http_outgoing:645:11)
at ServerResponse.header (C:\Users\user\Desktop\nodejs\node_modules\express\lib\response.js:794:10)
at ServerResponse.location (C:\Users\user\Desktop\nodejs\node_modules\express\lib\response.js:915:15)
at ServerResponse.redirect (C:\Users\user\Desktop\nodejs\node_modules\express\lib\response.js:953:18)
at C:\Users\user\Desktop\nodejs\routes\admin.js:44:13
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
code: 'ERR_HTTP_HEADERS_SENT'
}
[Error: EBUSY: resource busy or locked, unlink 'C:\Users\user\Desktop\nodejs\public\imgs\products\1-1696167288120.jpg'] {
errno: -4082,
code: 'EBUSY',
syscall: 'unlink',
path: 'C:\\Users\\user\\Desktop\\nodejs\\public\\imgs\\products\\1-1696167288120.jpg'
}
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
at new NodeError (node:internal/errors:399:5)
at ServerResponse.setHeader (node:_http_outgoing:645:11)
at ServerResponse.header (C:\Users\user\Desktop\nodejs\node_modules\express\lib\response.js:794:10)
at ServerResponse.location (C:\Users\user\Desktop\nodejs\node_modules\express\lib\response.js:915:15)
at ServerResponse.redirect (C:\Users\user\Desktop\nodejs\node_modules\express\lib\response.js:953:18)
at C:\Users\user\Desktop\nodejs\routes\admin.js:44:13
at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
code: 'ERR_HTTP_HEADERS_SENT'
}