Results 1 to 11 of 11

Thread: Info per sito con database

  1. #1
    Zaider's Avatar
    Join Date
    Jan 2004
    Location
    Nella pianura della nebbia..
    Posts
    8.708

    Default Info per sito con database

    Devo realizzare un progetto per la tesina di maturità, ho scelto di ricreare una versione semplificata di Flickr (perchè come argomento tratterò la fotografia).

    Necessiterei di alcune info/consigli per delle cose che non sò fare ma che mi servono (o cmq prima di tagliarle vorrei vedere se son realizzabili).

    Il database (parte principale del progetto) si occupa di memorizzare degli utenti con dati anagrafici ecc ecc, le foto aventi codice nome commento voto, genere avente nome e note ed album con un codice, un nome ed eventuale commento del creatore.

    Ora, le associazioni le ho disegnate, e mi sembra abbia tutto un senso, rimango bloccato su 2 questioni.

    La prima, i voti. Vorrei che ogni utente potesse votare ogni foto 1 volta, con una scala da 1 a 5, così da creare sul sito delle classifiche suddivise per genere (per il genere X richiamo le prime 5 foto in ordine di voto x esempio).
    Il problema è che non sò come progettare questa parte, per ora mi sono limitato a disegnare un associazione N a N tra utente e foto di nome "vota", ma non credo funzionerebbe, perchè così ogni utente potrebbe votare più volte la stessa foto, e non voglio.
    Dove sistemo questa parte? direttamente sul dbms? io penso che userò access 2007 per creare il db.


    La seconda questione è sui commenti, vorrei che ogni utente potesse commentare le foto online, di tutti, un pò come su flickr (però niente lista amici, mi pare troppo complicata da realizzare bene), sulla falsariga dei blog.
    Questa parte dove si progetta, nel database o fà parte del sito? come si realizza? (il sito sarà fatto in html ed asp, al massimo il template in css, altri linguaggi non conosco)

    Grazie in anticipo per le risposte, e se avete eventuali consigli/critiche non fatevi problemi a scriverli
    gratz.

  2. #2
    Lieutenant Commander Mez's Avatar
    Join Date
    Sep 2003
    Location
    Milano
    Posts
    6.607

    Default

    ma ti servirebbe la parte della programmazione?
    Per il voto potresti usare ajax (così non refreshi neanche la pagina)

  3. #3
    Tunnel's Avatar
    Join Date
    Mar 2004
    Location
    Location.
    Posts
    14.756

    Default

    Se fai una tabella voti dove hai IDutente | IDfoto | voto e poi la query di insert controlli che non ci sia la riga avente le var @Idutente e @Idfoto e gg
    la parte dei commenti va ugualmente nel db. come fai a metterla nell'html ? o_0
    sarò un "tavolatore" ma anche qui table comment |IDRiga|IDFoto|IDUtente|Commento| e magari controlli che se IDutente where MAXIDriga= @IDutente print "vaffanculo usa edit"
    Last edited by Tunnel; 25th May 2009 at 12:57.
    on Camelot Unchained (alpha):
    Nichodemus <GildaDiVecchieGlorieInPensione> - LaClasseCheCura - ServerName [soon]
    PG dei giochi vari in spoiler
    Spoiler


  4. #4
    Zaider's Avatar
    Join Date
    Jan 2004
    Location
    Nella pianura della nebbia..
    Posts
    8.708

    Default

    Quote Originally Posted by Mez View Post
    ma ti servirebbe la parte della programmazione?
    Per il voto potresti usare ajax (così non refreshi neanche la pagina)
    Ajax non sò cosa sia mez :/

    E cmq vorrei dei consigli su come muovermi, almeno per sapere se gli elementi che ho chiesto vanno messi nella fase di progettazione o solo in quella di codifica!

    Confesso che sono abbastanza niubbo in materia, non ho mai provato a realizzare un qualcosa di così complesso (x me)
    gratz.

  5. #5
    Zaider's Avatar
    Join Date
    Jan 2004
    Location
    Nella pianura della nebbia..
    Posts
    8.708

    Default

    Quote Originally Posted by Tunnel View Post
    Se fai una tabella voti dove hai IDutente | IDfoto | voto e poi la query di insert controlli che non ci sia la riga avente le var @Idutente e @Idfoto e gg
    beh in teoria con un associazione N a N tra utente e foto si crea una nuova relazione avente come Attributi utente.username, foto.codice e voto (perchè attributo dell'associazione)

    fin qui ci sono arrivato pure io
    gratz.

  6. #6
    Lieutenant Commander Mez's Avatar
    Join Date
    Sep 2003
    Location
    Milano
    Posts
    6.607

    Default

    i commenti puoi farli anche evitando il db volendo, salvando sul file .txt/.php
    Code:
    $config_use_cookies = TRUE;  
    $config_use_sessions = FALSE;  
    $config_check_referer = TRUE;

    Code:
     
    $all_comments = file("./cartella_tua/comments.txt");
            foreach($all_comments as $news_comments){
                    $single_news_comments = explode("|>|", $news_comments);
                $individual_comments = explode("||", $single_news_comments[1]);
                $count_comments += count($individual_comments) - 1;
            }
    Last edited by Mez; 25th May 2009 at 13:11.

  7. #7
    Zaider's Avatar
    Join Date
    Jan 2004
    Location
    Nella pianura della nebbia..
    Posts
    8.708

    Default

    Alla fine ho pensato di mettere sia i voti che i commenti come delle associazioni N a N tra utente e foto
    in teoria dovrebbe funzionare...
    rimane sempre il problema che non sò come far votare 1 volta sola la stessa foto
    gratz.

  8. #8
    Warrant Officer black's Avatar
    Join Date
    Mar 2007
    Location
    casa mia
    Posts
    2.583

    Default

    Quote Originally Posted by Zaider View Post
    Alla fine ho pensato di mettere sia i voti che i commenti come delle associazioni N a N tra utente e foto
    in teoria dovrebbe funzionare...
    rimane sempre il problema che non sò come far votare 1 volta sola la stessa foto
    al voto associ l'id dell'utente e l'id della foto. e li metti come chiave primaria entrambi.

  9. #9

    Default

    Quote Originally Posted by Zaider View Post
    Alla fine ho pensato di mettere sia i voti che i commenti come delle associazioni N a N tra utente e foto
    in teoria dovrebbe funzionare...
    rimane sempre il problema che non sò come far votare 1 volta sola la stessa foto
    Te l'ha spiegato Tunnel

    Se memorizzi il voto in una tabella separata in cui lo associ a id utente e id della foto, puoi fare in modo che per ogni id utente e id foto ci possa essere un solo record "voto".

    si chiama chiave univoca o unique key, e nel tuo caso è composta da

    utente.id, foto.id

    Se corrispondono a una riga che già esiste nella tabella con questi valori, il db va in errore (e se gestisci l'errore, semplicemente mandi un mex all'utente ricordandogli che ha già votato).

    Non solo, così puoi, se vuoi, consentire anche all'utente di modificare il proprio voto.
    Jarsil, the Nervous Admin of [W] Forums
    Quote Originally Posted by Ipnotik
    non gli bastava averci tolto il nostro caro PD, ora ci tolgono pure l'ASD. Manca solo una coalizione di centrosx in italia chiamata LOL, e poi siamo al completo.

    Quote Originally Posted by spinoza.it
    Il premier: “L’Italia è vittima di un passato che non passa”. E di un dittatore con una ditta.

  10. #10
    Tunnel's Avatar
    Join Date
    Mar 2004
    Location
    Location.
    Posts
    14.756

    Default

    Due anni di lavoro su un programma con un db di 80 tabelle e inizio a capirci qualcosa
    on Camelot Unchained (alpha):
    Nichodemus <GildaDiVecchieGlorieInPensione> - LaClasseCheCura - ServerName [soon]
    PG dei giochi vari in spoiler
    Spoiler


  11. #11
    Zaider's Avatar
    Join Date
    Jan 2004
    Location
    Nella pianura della nebbia..
    Posts
    8.708

    Default

    Grazie a tutti per i consigli, il db pare funzionare, anche se non l'ho ancora testato per bene.

    Ora stò sclerando per trovare un template decente già fatto per il sito internet, quelli che faccio sono orrendi, mi vergogno a presentarli in un colloquio.

    Qualcuno conosce un sito dove comprarli a prezzi ridotti o, meglio ancora, a trovarli gratis?
    Preferisco siano in html .. però valuto anche altro (più che altro "conosco" solo html, non saprei lavorare su progetti in flash)
    gratz.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
[Output: 86.59 Kb. compressed to 73.98 Kb. by saving 12.61 Kb. (14.56%)]