Buongiorno,
ho un problema che mi tormenta da ore e non riesco a risolverlo.
Di seguito riporto il codice che mi produce il seguente errore in Console:
Uncaught TypeError: categories.forEach is not a function
at populateCategoryOptions
Di seguito cosa contiene l'array Data e mi sembra che restituisca un array corretto.
- {categories: Array(1)}
- categories: Array(1)
- 0: {cat_id: '01', desc_cat: 'Articoli'}
- length: 1
- [[Prototype]]: Array(0)
Potete gentilmente aiutarmi ?
Grazie in anticipo
function populateCategoryOptions() {
const catPaginaSelect = document.getElementById('cat_pagina');
console.log("pippo");
// Esegui la query per ottenere le categorie
// Assicurati di implementare la logica necessaria per ottenere i risultati dalla tua query
const categories = getCategories(); // legge le categorie dalla tabella cat_pagine
// Popola le opzioni nel tag select
categories.forEach(category => {
const option = document.createElement('option');
option.value = category.cat_id; // campo cat_id della tabella cat_pagine
option.textContent = category.desc_cat; // campo desc_cat della tabella cat_pagine
catPaginaSelect.appendChild(option);
});
}
// Chiamata alla funzione per popolare le opzioni delle categorie al caricamento della pagina
window.addEventListener('load', populateCategoryOptions);
// Funzione per ottenere le categorie dalla tua origine dati (ad esempio, una richiesta al server)
function getCategories() {
return fetch(`get_categories.php`)
.then(response => {
if (!response.ok) {
throw new Error('Errore durante la richiesta delle categorie');
}
return response.json();
})
.then(data => {
console.log('Dati ricevuti dal server:', data);
// Verifica se 'categories' è un array prima di restituire
return Array.isArray(data.categories) ? data.categories : [];
})
.catch(error => {
console.error('Errore durante il recupero delle categorie:', error);
return [];
});
}