Javascript 一对多关系节点Js
我正试图根据当前登录用户的会话id从中选择所有照片 我有一个照片表,用于跟踪每个用户的照片 身份证| 用户照片| 用户id(外键) 当我运行代码时,我不断收到这样的错误消息“发送到客户端后无法设置头”。我做错了什么?我需要在这里加入用户表吗?任何帮助都将不胜感激 “发送到客户端后无法设置标题。”表示您试图向用户发送多个响应,请使用此功能Javascript 一对多关系节点Js,javascript,mysql,node.js,Javascript,Mysql,Node.js,我正试图根据当前登录用户的会话id从中选择所有照片 我有一个照片表,用于跟踪每个用户的照片 身份证| 用户照片| 用户id(外键) 当我运行代码时,我不断收到这样的错误消息“发送到客户端后无法设置头”。我做错了什么?我需要在这里加入用户表吗?任何帮助都将不胜感激 “发送到客户端后无法设置标题。”表示您试图向用户发送多个响应,请使用此功能 res.json(rows.map(function (row) { return row.user_photos })) 您不能从循环发送响应,因为它是第一
res.json(rows.map(function (row) { return row.user_photos }))
您不能从循环发送响应,因为它是第一次发送响应,然后给出错误。 请试试这个-
let select_photos_sql = "SELECT * FROM photos WHERE user_id = ?";
mysql_connection.query(select_photos_sql, [session_id], function (error,
rows) {
if(error){
res.send("An error has occurred, please try again later.");
} else {
if(rows.length > 0){ /**IS THIS BLOCK NECESSARY? WHEN I CHANGE IT TO === 1, I DON'T GET THE
ERROR BUT I GET NO PHOTOS FOUND**/
var photos_arr = [];
var photo_count = 0;
rows.forEach(function (row) {
let photos = row.user_photos;
console.log(photos); /**LOGS OUT THE PHOTOS FROM THE USER BUT CAN'T DISPLAY IT**/
photos_arr.push(photos);
photo_count = photo_count+1;
});
if (photo_count == rows.length) {
res.render("user_photos", {photos: photos_arr});
}
} else {
res.send("No photos found.");
}
}
});
尝试将
res.render
从循环中删除。非常感谢您的帮助!顺便问一下,您知道如何在html图像标记中输出用户的图像吗?我在.ejs文件上有一个图像标记,但当它输出结果时,它输出为:image1,image2。然后,如果我在src中放置一个带有结果的图像标记,它将是。有没有一种方法可以让它变成某种循环?
let select_photos_sql = "SELECT * FROM photos WHERE user_id = ?";
mysql_connection.query(select_photos_sql, [session_id], function (error,
rows) {
if(error){
res.send("An error has occurred, please try again later.");
} else {
if(rows.length > 0){ /**IS THIS BLOCK NECESSARY? WHEN I CHANGE IT TO === 1, I DON'T GET THE
ERROR BUT I GET NO PHOTOS FOUND**/
var photos_arr = [];
var photo_count = 0;
rows.forEach(function (row) {
let photos = row.user_photos;
console.log(photos); /**LOGS OUT THE PHOTOS FROM THE USER BUT CAN'T DISPLAY IT**/
photos_arr.push(photos);
photo_count = photo_count+1;
});
if (photo_count == rows.length) {
res.render("user_photos", {photos: photos_arr});
}
} else {
res.send("No photos found.");
}
}
});