Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. raggruppare per mese
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • C
      cali1981 Super User • ultima modifica di

      Una volta estratte, le scorri una per una e appena trovi un nuovo mese metti al relativa intestazione.

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        tymba Super User • ultima modifica di

        ciao,
        ponendo che il campo data si chiami mydata:

        
        select count(*) as numero from tabella group by month(mydata)
        
        

        in questo modo hai raggruppato i record per mese.

        estrarre solo i record che hanno un determinato mese:

        
        select * from tabella where month(mydata) = $mese
        
        

        in questo modo estrai solo gli articoli di un determinato mese

        altri comandi interessanti sono day(), year().

        una ricerchina su gg ti aiuterà a vedere tutti gli altri comandi per gestire le date all'interno di una istruzione sql.

        ciao ciao

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • T
          talkoman User Attivo • ultima modifica di

          @cali1981 said:

          Una volta estratte, le scorri una per una e appena trovi un nuovo mese metti al relativa intestazione.

          mi aiuti a farlo per favore perchè non mi è chiaro....

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • C
            cali1981 Super User • ultima modifica di

            Allora, come detto, fai la select ordinando per data. Poi fai un ciclo while da cui estrai un riga per volta. A quel punto potresti salvarti il mese che estrai daogni riga. Quando estrai la successiva, fai il confronto, e se è diverso, visualizzi nella pagina l'intestazione del mese.

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • T
              talkoman User Attivo • ultima modifica di

              vediamo se così va bene:

              [PHP]<?php
              $query="SELECT * FROM news WHERE data<='".$oggi."' ORDER BY data DESC, idNews DESC";
              $ris=@mysql_query($query);
              while($riga=mysql_fetch_array($ris)){
              $id=$riga['idNews'];
              $titolo=$riga['titolo'];
              $mese=substr($riga['data'],5,2);
              $link=$riga['link'];
              echo "<li>
              <p class='MsoNormal' style='text-align: justify; margin-top: 0; margin-bottom: 0'>
              <b><span style='font-family: Verdana'><font size='1'>
              <a ";
              if ($link=='')
              echo "href='leggi.php?idNews=$id'";
              else
              echo "href='$link' target='_blank'";
              echo ">$titolo</a></font></span></b></li>";
              }
              ?>[/PHP]

              e ora??

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • C
                cali1981 Super User • ultima modifica di

                [PHP]<?php
                $query="SELECT * FROM news WHERE data<='".$oggi."' ORDER BY data DESC, idNews DESC";
                $ris=@mysql_query($query);
                $mese_precendete = '';
                while($riga=mysql_fetch_array($ris)){
                $id=$riga['idNews'];
                $titolo=$riga['titolo'];
                $mese=substr($riga['data'],5,2);
                if($mese_precendete != $mese) {
                echo '<h1>Mese $mese</h1>';
                $mese_precendete = $mese;
                }
                $link=$riga['link'];
                echo "<li>
                <p class='MsoNormal' style='text-align: justify; margin-top: 0; margin-bottom: 0'>
                <b><span style='font-family: Verdana'><font size='1'>
                <a ";
                if ($link=='')
                echo "href='leggi.php?idNews=$id'";
                else
                echo "href='$link' target='_blank'";
                echo ">$titolo</a></font></span></b></li>";
                }
                ?>[/PHP]

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • T
                  talkoman User Attivo • ultima modifica di

                  ok aspetta che provo e ti faccio sapere.
                  Grazie!!

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • C
                    cali1981 Super User • ultima modifica di

                    di niente! Considera che non l'ho provato quindi forse qualche aggiustamento ci vuole...

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • T
                      talkoman User Attivo • ultima modifica di

                      ma c'è una funzione in php che mi visualizza invece di 03-->Marzo?

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        talkoman User Attivo • ultima modifica di

                        grazie!!! funziona!!!

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • C
                          cali1981 Super User • ultima modifica di

                          Di niente! Buon proseguimento!

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          Caricamento altri post
                          Rispondi
                          • Topic risposta
                          Effettua l'accesso per rispondere
                          • Da Vecchi a Nuovi
                          • Da Nuovi a Vecchi
                          • Più Voti