Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    437

    Risultati query doppi, mostra il piu recente...

    Mi spiego. Ho fatto una sorta di controllo delle visualizzazioni dei articoli da parte di ogni singolo utente. Quando apre l'articolo gli viene scritto: hai visto questo articcolo 1 volta il data e ora.. se sono 2 volte voglio scegliere il piu recente, ma a fare questo ci arrivo e tra poco lo faccio. Il problema mi sorge nella pagina personale del utente ce una lista dei ultimi 10 articoli visionati. Ora faccio la lista e con mysql num rows gli stampo le volte che ha visualizzato quel articolo.. ma se lo apre di nuovo mi viene visualizzata la voce 2 volte, ed ecco qui che vorrei far scegliere allo script il la visita recente.
    Senza che posto il codice perche con quello non ho problemi, qualcuno di voi puo farmi un esempio di come si potrebbe strutturare questa cosa?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di Fractals87
    Registrato dal
    Apr 2008
    Messaggi
    1,202
    Dipende dalla strutta del database che hai impostato :

    Soluzione 1 :
    Sul record articolo due campi con "nvisite" e "data ultima visita"
    Filtrando cosi gli articoli hai tt le informazioni a tua disposizione....
    ovviamente nvisite va incrementato ed aggiornata la "data ultima visita" quando l'articolo viene visionato...

    Se invece vuoi tenere lo storico per ogni user che visita l'articolo con la data devi utilizzare una seconda tabella...
    tab 1 articoli
    tab 2 visite

    visite avrà il codice di aggancio al singolo articolo
    e per ogni rk di visite memorizzi user e data visita

    fai una select su articolo left join visite (where user = quello connesso AND MAX(data visita)
    in questo modo tiri fuori l'ultima visita di quell'utente di quell' articolo.

    Con una select eventualemente fai il count di quante volte lo user ha visitato l'articolo o quante volte lo hanno visitato tt gli user, dipende da cosa metti nel where.....

    Domanda ma è proprio necessario tt questo tram tram?
    Che mestiere difficile.....essere da soli ancora di più

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    437
    Il database e gia pronto, gia ad ogni visualizzazione inserisco nella tabella id_utente id_articolo e timestamp.

    La cosa piu semplice da fare senza complicarsi la vita e estrarre solo la voce piu recente in base al timestamp.

    Di questo ho bisogno!

  4. #4
    Utente di HTML.it L'avatar di Fractals87
    Registrato dal
    Apr 2008
    Messaggi
    1,202
    allora devi fare cosi :
    Select * from tabella1 where user=(tuo user) and articolo=(tuo articolo) and timestamp = (select Max(timestamp) from tabella 1 where user=(tuo user) and articolo=(tuo articolo) )

    In questo modo tiri fuori l'utimo record corrispondente a user, articolo e timestamp massimo
    Che mestiere difficile.....essere da soli ancora di più

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.