Gestione portfolio / categorie con relazione molti a molti

Fabio Grasso

Nuovo Utente
6 Nov 2014
26
0
0
32
www.grassofabio.com
Buona serata ho un problema con la progettazione di un database relazionale(molti a molti) in pratica dovrei gestire un classico portfolio con le rispettive categorie come in questo esempio http://shapebootstrap.net/demo/html/corlate/portfolio.html#.

Ho creato una tabella portfolio con all'interno i rispettivi campi: id, nome, immagine e una tabella categorie con id e nome.
Infine ho creato una terza tabella portfolio_categorie con id.portfolio e id.categorie .

In seguito ho creato un form con i seguenti input text: nome, immagine, ed ho recuperato i valori delle categorie dalla tabella categorie inserendoli nelle rispettive checkbox.

Il mio scopo è quello di salvare: il nome, l'immagine e le categorie, ma non so come salvare il tutto nella tabella portfolio_categorie.

Avete dei suggerimenti?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
se non ho capito male il problema, secondo me hai fatto una teballe in più
la tabella portfolio_categorie non dovrebbe servirti
fatta la tabella categorie
Codice:
id
nome_categoria
dovrebbe bastarti aggiungere nella tabella portfolio il campo che lega l'immagine alla categoria es.
Codice:
id
nome
immagine
id_categoria
poi cosa intendi per salvare l'immagine? il nome del file? e poi caricare l'immagine in una cartella?
 

Fabio Grasso

Nuovo Utente
6 Nov 2014
26
0
0
32
www.grassofabio.com
Ciao Borgo Italia;
dovrebbe bastarti aggiungere nella tabella portfolio il campo che lega l'immagine alla categoria es.
Codice:
id
nome
immagine
id_categoria
Ma in questo caso sarebbe una relazione 1 a molti giusto?
A me servirebbe che ogni lavoro può appartenere a più categorie ed ogni categoria può contenere più lavori,quindi se non erro dovrebbe essere una relazione molti a molti.

poi cosa intendi per salvare l'immagine? il nome del file? e poi caricare l'immagine in una cartella?
Esattamente
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
A me servirebbe che ogni lavoro può appartenere a più categorie ed ogni categoria può contenere più lavori,quindi se non erro dovrebbe essere una relazione molti a molti.
Esatto, se ogni prodotto può appartenere a più categorie allora devi fare un'altra tabella (chiamata tabella di relazione).

Quindi avrai:
PRODOTTI: id, nome, descrizione, immagine
PORTFOLIO_CATEGORIE: id_prodotto, id_categoria
CATEGORIA: id, nome, descrizione

Spero di non aver dimenticato nulla :)
 

Fabio Grasso

Nuovo Utente
6 Nov 2014
26
0
0
32
www.grassofabio.com
Grazie,quindi con le tabelle ci siamo :) ora il mio problema nasce nel momento in cui devo salvare più categorie contemporaneamente.

Purtroppo è la prima volta che affronto questo tipo di relazione(molti a molti) e fin quando si tratta di salvare un singolo valore per volta ci riesco tranquillamente,ma nel caso di più checkbox selezionate(che corrispondono alle categorie) non so come gestirle...
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Bisogna inserire una tupla (una riga) della tabella di relazione PORTFOLIO_CATEGORIE per ogni categoria selezionata e quindi per ogni check box spuntata.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
avevo capito male e semper che non abbia capito ancora male
prova a vedere questo schema
PHP:
<?php
if(isset($_POST['invia'])){
	//dati connessione
	//leggi i valori dal form
	$nome=$_POST['invia'];
	//qui farai il caricamento dell'immagine
	$immagine=$_FILES['file']['name'];
	//...
	//e poi l'insert dei dati in tabella
	$sql_1="INSERT INTO portfolio (nome, immagine) VALUES ('$nome','$immagine')";
	$ris=mysqli_query($conn, $sql_1);
	//ESTRAI IL VALORE DELL'ID APPENA INSERITO
	$ultimo=mysqli_insert_id($ris);
	//cicli e inserisci i valori provenienti dalle check
	foreach($_POST['cat'] as $id_cat){
		$sql_2="INSERT INTO PORTFOLIO_CATEGORIE (id_immagime, id_categoria) VALUES ($ultimo,$id_cat)";
		$ris=mysqli_query($conn, $sql_2);
	}
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<p>nome <input name="nome" type="text" id="nome">
<br> file <input type="file" name="file" id="file"></p>
<p>categoria:<br>
<?php
//select sulla tabella delle categorie
//....
//mostri le categorie esistenti
while($c=mysql_fetch_assoc($r)){
	echo "<input name=\"cat[]\" type=\"checkbox\" id=\"cat\" value=\"".$c['id']."\">".$c['categoria']."<br>";
}
?>
<p>
<input name="invia" type="submit" id="invia" value="invia">
</form>
quarda che però ho tralasciato sia il caricamento dell'immagine e tutti gli oppotuni NECESSARI controlli
 

Fabio Grasso

Nuovo Utente
6 Nov 2014
26
0
0
32
www.grassofabio.com
Ottimo,grazie al vostro aiuto finalmente ho capito come gestire una relazione molti a molti(nel mio caso lavori/categorie) ed
ho anche gestito l'aggiornamento e la cancellazione sia dei lavori che delle categorie :)

Ci tengo a fare i complimenti al forum mrwebmaster dove ci sono persone preparate e sempre disponibili ad aiutare il prossimo.
 
Discussioni simili
Autore Titolo Forum Risposte Data
andreas88 Gestione Profilo OnlyFans Leggi, Normative e Fisco 0
A Creazione cookie e gestione accessi PHP 0
B form gestione input PHP 2
sbolde91 Consiglio gestione Hosting Hosting 2
E Gestione profilo utente tramite Form PHP 3
S cerco esperto gestione ecommerce Offerte e Richieste di Lavoro e/o Collaborazione 0
P Curiosità su grandi aziende e la gestione delle grafiche. Discussioni Varie 1
M Consiglio sulla gestione di Gerarchie Database 0
A attributo "min" per input gestione date PHP 8
L Gestione DB ASP.NET 2
L Consiglio SEO gestione dominio + free hosting SEO e Posizionamento 3
G [PHP] gestione mouse PHP 2
B Gestione Prenotazioni con Mysql Database 21
D CREAZIONE E GESTIONE SITO E-COMMERCE Offerte e Richieste di Lavoro e/o Collaborazione 2
P (Cerco) Collaboratori per gestione social media Offerte e Richieste di Lavoro e/o Collaborazione 5
psicomia Gestione funzione in javascript in tabella richiamare"textarea" valori preimpostati in "select" Javascript 2
brasoft2019 [PHP] Sistema di gestione presenze PHP 29
W Preventivo gestione ecommerce Discussioni Varie 1
E Cerco partner / socio per gestione sito di annunci incontri Offerte e Richieste di Lavoro e/o Collaborazione 0
K e-commerce per distribuzione e dettaglio con gestione magazzino E-Commerce 0
G [MS Access] Gestione biglietti [RISOLTO] MS Access 2
Jonn [WordPress] Gestione categorie e tags per sito eventi WordPress 2
felino Gestione dispositivi e Altri dispositivi Windows e Software 4
D Software per gestione account facebook? Social Media Marketing 1
D Cero Software Facebook gestione account Vendere e Acquistare pubblicita' online 0
M Offro servizio Incremento Follower e Gestione Profili Istagram Offerte e Richieste di Lavoro e/o Collaborazione 0
S elementi statistici - Matrice e Gestione Array PHP o Javascript Javascript 0
J [offro] hosting / installazione certificati ssl / gestione server Offerte e Richieste di Lavoro e/o Collaborazione 0
F [PHP] gestione meteo manuale per un gioco di ruolo PHP 1
bianca_dimulescu Gestione tabella e MySQL PHP 4
T Servizio gestione pagina Instagram Offerte e Richieste di Lavoro e/o Collaborazione 0
G Gestione e/o vendita hosting come libero professionista Leggi, Normative e Fisco 4
MatMac System [PHP] Gestione dinamica select-option PHP 3
xone [Vendo] Script gestionale php-mysql gestione pratiche Altri Annunci 0
S [PHP] Gestione coupon PHP 3
lxella [PHP] Aree riservate e gestione utenti PHP 1
D Gestione punteggi php PHP 1
B Cercasi socio per gestione sito web Offerte e Richieste di Lavoro e/o Collaborazione 0
G gestione pagina facebook Social Media Marketing 0
Cavalinho08 [Offro gestione pagine instagram, prezzo bassissimo] Annunci servizi di Social Media Marketing 3
D [VENDO] Gestione account instagram Annunci servizi di Social Media Marketing 2
N [VENDO] Gestione pagine FB Annunci servizi di Social Media Marketing 2
ientii [PHP] Gestione CheckBox PHP 1
W Consiglio su gestione di un form con XMLHttpRequest Ajax 0
booklisa Compressione immagini e gestione media CMS (Content Management System) 1
T gestione livelli sessioni php msqli PHP 1
giuseppe_123 [PHP] Gestione corsi PHP 1
A [WordPress] Plugin gestione ordine prodotto. WordPress 0
V [PHP] [OOP]Gestione errori connessione db PHP 5
R [PHP] Software gestione interventi e creazione registro (log) PHP 1

Discussioni simili