Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    129

    Ordinare messaggi dall'ultoma risposta

    Ciao a tutti, mi ritrovo nuovamente in difficoltà per un problema che in realtà è banale, vorrei che mordinasse i bassaggi in bacheca, secondo l'ultimo che ha scritto (un po' come qui, quando qualcuno scrive anche solo "X" in un post del '15-'18, il post balza al primo posto nell'elenco)


    Io ho provato in tutti i modi... da GROUD, a ORDER, a tutti e due... ma non ho trovato la giusta combinazione, i parametri del database sono i seguenti:

    IDMessaggio <-- numero prograssivo che avanza
    IDMessaggioPadre <-- è il numero che identifica il post che apre la discussione, nel mio caso, questo che sto scrivendo io adesso
    IDAraldo <-- un po' come se per questo forum fosse la sezione "php", "asp" ecc...
    DataMessaggio <-- beh... è la data...


    codice:
    $MySql = "SELECT * FROM MessaggioAraldo WHERE IDAraldo = '$IDAraldo' AND IDMessaggioPadre = '$IDMsgPadre'";
        
    if ($IDMsgPadre == 0) {  // quindi se non è stato aperto il post (e qui si pone il problema di come ordinarli...)
    $MySql .= " ORDER BY DataMessaggio";
    $MySql.=" DESC LIMIT ".((($p-1)*$pagemax)).", ".$pagemax;
    } else {
    $MySql .= " ORDER BY IDMessaggio";
    }
    A me servirebbe ordinarli dando delle categorie ovvero, raggruppra tutti dove il numero di IDMessaggio e di IDMessaggioPadre sono uguali (quindi sono messaggi legati tra di loro, magari uno è il padre e l'altro la risposta a quello) e poi ordinare a sua volta il tutto tramite la data....insomma... è un casino che non so da che parte iniziare...


    Marco <che al momento ha idee più confuse di voi che leggete... immaginate...>

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    129
    up

  3. #3
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Puoi spiegarti un po' meglio?

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    129
    certamente, dunque, vorrei fare in modo che in un forum i messaggi siano ordinati in base all'ultima risposta.

    I parametri del db sono indicati nel mio post qui sopra.

    Quando qualcuno apre un nuovo argomento di discussione, il messaggio assume nel db il valore 0 al campo IDMessaggioPadre e le successive risposte si ricollegano al messaggio "padre" rilevandone l'IDMessaggio (autoincrement) del messaggio padre

    1°post (apre l'argomento di discussione)
    IDMessaggio 156
    IDMessaggioPadre 0

    2° post (prima risposta all'argomento aperto)
    IDMessaggio 157
    IDMessaggioPadre 156

    3°post (seconda risposta all'argomento aperto)
    IDMessaggio 179 (perchè magari nel frattempo sono state scritte altre risposte)
    IDMessaggioPadre 156


    Spero di essemi spiegato un po' meglio...


    Grazie mille

    Marco

  5. #5
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Non ho capito se vuoi ordinare i messaggi all'interno di un argomento aperto o se vuoi ordinare la lista degli argomenti (e per argomento intendo un messaggio con padre=0) in base alla data dell'ultima risposta.

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    129
    devo ordinare la lista degli argomenti in base all'ultima risposta che ogni argomento contiene.

    Se noti questo forum in cui scriviamo, i messaggi sono ordinati in base all'ultima risposta data in un post, io vorrei fare la stessa cosa.


    Marco

  7. #7
    SELECT IDMessaggioPadre FROM MessaggioAraldo
    WHERE IDAraldo = quelloch'èpoi
    GROUP BY IDMessaggioPadre
    ORDER BY MAX(DataMessaggio) DESC

    non so se ha senso, è solo un'idea buttata là alle 4 e 53 di mattina

  8. #8
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    SELECT DISTINCT
    IF(IDMessaggioPadre=0,IDMessaggio,IDMessaggioPadre ) AS ID
    FROM TABELLA
    ORDER BY DATA DESC

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 © 2025 vBulletin Solutions, Inc. All rights reserved.