
Originalmente inviato da
alemoppo
Che io sappia non esiste una funzione che estragga più record da una query contemporaneamente. L'unica via è usare un ciclo come penso hai fatto.
Puoi anche usare la seconda soluzione con i valori separati dalla virgola, per poi riportarli nel formato che vuoi tu lavorando con
explode().
Ciao!
In quasi tutti i framework php (credo) esiste un sistema di relazioni delle tabelle che ti consente di creare un oggetto contenente tutte le informazioni relazionate al record selezionato...
esempio:
Codice PHP:
$product->name; // stringa col nome del prodotto
$product->images; // array delle immagini associate
...
Non esiste una libreria o qualcosa che analizzi ed elabori l'array creato da fetch_array/assoc?
Come si riproduce la stessa cosa se non si ha a disposizione un framework?
Finché le tabelle JOINNATE sono 2 la soluzione del ciclo non è un problema, ma quando diventano di più?
L'alternativa che ho utilizzato fino adesso è fare una query per ogni tabella di relazioni... ma avrei problemi di performance rispetto a fare una query unica con le varie JOIN, mi sbaglio?
Per quanto riguarda la soluzione del GROUP_CONCAT il problema è che avrei solo i valori di un campo separati da virgola, esempio:
Codice PHP:
$product['images'] = 'img1.jpg,img2.jpg,img3.jpg,...'; // campo estratto GROUP_CONCAT
Ma se oltre al nome immagine ho bisogno anche di un altro valore associato presente nella tabella delle immagini come mi comporto?
Grazie mille per aver risposto