Hallo mal wieder.
Hab hier eine verschachtelte Abfrage, die so weit funktioniert.
Die Idee ist dahinter, das man Grunddaten aus der DB holt und diese via SWITCH aufgelöst werden. Anhand der in SWITCH gefundenen Einträge, soll ein neues ARRAY Element erstellt werden, der die eigentlichen Daten zusammengefasst weitergeben soll.
Setze ich unter dem websiteData.push ein console.log(websiteData), zeigt der mir den gewünschten Inhalt an.
Leider aber nicht unten in console.log(JSON.stringify(websiteData)). Da wird mir ein leeres Array angezeigt. []
Wo ist da mein Denkfehler?
Terra
Hab hier eine verschachtelte Abfrage, die so weit funktioniert.
Die Idee ist dahinter, das man Grunddaten aus der DB holt und diese via SWITCH aufgelöst werden. Anhand der in SWITCH gefundenen Einträge, soll ein neues ARRAY Element erstellt werden, der die eigentlichen Daten zusammengefasst weitergeben soll.
PHP-Code:
db.query("SELECT * FROM hp", (err, result) => {
if (result) {
if (result[0].hp_active === 1) {
const websiteData = new Array();
const data = JSON.parse(result[0].hp_sites);
data.site.forEach(function (value, index, items) {
switch (value.type) {
case 'slideshow':
console.log(value.items);
break;
case 'cards':
break;
case 'threepic':
break;
case 'box':
return db.query("SELECT * FROM hp_normal_box WHERE id=?", [value.items], (err, result) => {
websiteData.push({ "box": { "message": result[0].message } });
});
case 'footer':
break;
default:
return null;
}
});
console.log(JSON.stringify(websiteData)) // <-- Hier ist nichts drin.
return ut.handleResponse(req, res, 200, {
home: JSON.stringify(websiteData)
});
}
}
});
Leider aber nicht unten in console.log(JSON.stringify(websiteData)). Da wird mir ein leeres Array angezeigt. []
Wo ist da mein Denkfehler?
Terra
Kommentar