MySQL & PHP Tabelle

kungfujava

Nuovo Utente
23 Ott 2013
10
0
0
Roma

Salve, sto creando un piccolo portale in php, ho superato la fase di login logout. Per farlo ovviamente mi sono servito di MySQL ed ho creato una tabella dove vado ad inserire gli utenti. Adesso volevo fare in modo che ogni utente possa inserire qualcosa di pubblico e quindi visualizzabile da tutti e qualcosa di privato visualizzabile solo da lui. Quello che mi sono chiesto per tutta la notte è quante tabelle devo creare e poi se devo unirle con delle JOIN o qualcos'altro.

Per delucidare meglio la questione faccio un esempio:

Si suppone che Pippo fa il login e vada nella pagina film. In questa pagina c'è una tabella con i film di tutti, Pippo può inserire un film e modificare/eliminare quelli che ha inserito lui. Oltre a questo Pippo tramite un pulsante può visualizzare la lista dei suoi film privati. Ovviamente questa cosa deve succedere per più argomenti. In questo caso quante tabelle devo creare, oltre, ovviamente a quella degli utenti con ID NOME PASS EMAIL che ho già creato?

Grazie e spero in una vostra risposta.

Tanti Saluti e buon lavoro :D
 
Ciao, il software del forum ha messo in automatico le tue discussioni in moderazione ( ovvero in attesa di essere approvate da un moderatore ). Non conosco le regole con cui il software prende queste decisioni ma ogni tannto succede. Le altre due discussioni che hai aperto le ho eliminate poichè doppie. Continuiamo su questa
 
ciao
potresti fare una cosa del genere (schematizzo):
tabella film
id | id_argomento |nome_film | id_ut | pub_o_priv

e la
tabella argomenti
id | argomento


poi qunado l'utente inserisce un film può decidere se pubblico o privato e mettere il campo pub_o_priv a
0 se pubblico
1 se privato

(potrebbe andar bene un campo di tipo set)

per visualizzare un po' di script
if(non loggato){
query=SELECT... WHERE pub_o_priv=0 AND id_argomento=id_argomento scelto
}else{
query=SELECT... WHERE id_argomento=id_argomento scelto
}

quindi un utente qualsiasi vede solo i pubblici
l'utente loggato vede sia i pubblici che quelli privati.
quando inserisce (immagino che per inserire non lo possano fare cani e porci ma solo gli iscritti) quindi loggato
nel campo id_ut ci metti il suo id proveniente dalla tabella "utenti" quindi per modificare o eliminare (anche qui loggato)
query= "DELETE/UPDATE ..... WHERE id_ut=id_del_loggato

comunque un consiglio: prima di buttarti a pc usa carta e matita per studiarti bene il db e le sue tabelle
 
Grazie mille, adesso vediamo se qualche volontario possa delucidare la situazione trattata da me.
Ciao, il software del forum ha messo in automatico le tue discussioni in moderazione ( ovvero in attesa di essere approvate da un moderatore ). Non conosco le regole con cui il software prende queste decisioni ma ogni tannto succede. Le altre due discussioni che hai aperto le ho eliminate poichè doppie. Continuiamo su questa
 
Grazie mille mi sono messo a fare un bel diagramma e adesso è tutto più chiaro! Ancora c'è un pochetto di confusione ma la cosa funziona...
Potresti aiutarmi con una cosa che mi affligge da tantissimo tempo??
Allora...ho creato un pagina per modificare username e password, funziona ma avendo messo un form con un metodo post, dopo aver premuto il tasto "modifica" = "invia"...mi aggiorna la pagina e ritorno nella stessa, in quanto non ho messo action nel form e se provo ad aggiornare o andare indietro mi esce conferma reinvio modulo!! come posso evitare questa cosa?? grazie mille e spero di trovare soluzione a questa cosa.

ciao
potresti fare una cosa del genere (schematizzo):
tabella film
id | id_argomento |nome_film | id_ut | pub_o_priv

e la
tabella argomenti
id | argomento


poi qunado l'utente inserisce un film può decidere se pubblico o privato e mettere il campo pub_o_priv a
0 se pubblico
1 se privato

(potrebbe andar bene un campo di tipo set)

per visualizzare un po' di script
if(non loggato){
query=SELECT... WHERE pub_o_priv=0 AND id_argomento=id_argomento scelto
}else{
query=SELECT... WHERE id_argomento=id_argomento scelto
}

quindi un utente qualsiasi vede solo i pubblici
l'utente loggato vede sia i pubblici che quelli privati.
quando inserisce (immagino che per inserire non lo possano fare cani e porci ma solo gli iscritti) quindi loggato
nel campo id_ut ci metti il suo id proveniente dalla tabella "utenti" quindi per modificare o eliminare (anche qui loggato)
query= "DELETE/UPDATE ..... WHERE id_ut=id_del_loggato

comunque un consiglio: prima di buttarti a pc usa carta e matita per studiarti bene il db e le sue tabelle
 

Discussioni simili