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. Contare articoli di un determinato utente sul database
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • I
      infosicurezza User Attivo • ultima modifica di

      Contare articoli di un determinato utente sul database

      Ciao a tutti,
      ho un problema con il database mysql e php.

      Sul mio database memorizzo gli articoli di ogni utente, però ogni utente può scrivere più di un articolo, e nel database verrà memorizzato una cosa del genere :

      Nome Articolo

      Luca bla bla bla
      Franc hihihihihi
      Luca oohohhohoh

      e così via....
      Ora voglio far in modo che stampi tutti gli articoli solo di luca...e contare quanti articoli ha scritto quel determinato utente.
      Sapete più o meno come fare ?
      Grazie

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • T
        thedarkita ModSenior • ultima modifica di

        Ciao infosicurezza,
        non ho capito la struttura del database con il tuo esempio, in ogni caso basta inserire il WHERE nella query per prendere solo gli articoli scritti da un determinato utente.

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • I
          infosicurezza User Attivo • ultima modifica di

          la struttura del mio database è una cosa del genere...

          Nome : Luca - Articolo : bla bla bla bla
          Nome : Franc - Articolo : ohohohohoho
          Nome : Luca - articolo : HIHIHIHIHIIHIHI

          Cioè memorizza nome e articolo per ogni utente...
          io ho fatto una cosa del genere
          [php]
          if(mysql_num_rows(mysql_query("SELECT user,giorno,mese,anno FROM articoli WHERE user = '$user' LIMIT 1")) == 1)
          [/php]
          Ma non ottengo risultati... o meglio non stampa ciò che voglio...

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            thedarkita ModSenior • ultima modifica di

            Cosa dovrebbe fare quell'if?

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • I
              infosicurezza User Attivo • ultima modifica di

              @Thedarkita said:

              Cosa dovrebbe fare quell'if?
              controllare se l'utente in quella tabella memorizzato abbia almeno scritto un articolo... hai qualche idea ?? io sto impazzendo

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • G
                genchiludo User • ultima modifica di

                prova con
                [PHP]
                if(mysql_num_rows(mysql_query("SELECT user,giorno,mese,anno FROM articoli WHERE user = '$user'")) != 0)
                [/PHP]

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • I
                  infosicurezza User Attivo • ultima modifica di

                  No non va....
                  Il fatto è che stampa sempre 1 solo articolo di quell'utente (l'ultimo inserito) mentre invece ne dovrebbe stampare tutto il resto sempre di quel determinato utente

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • G
                    genchiludo User • ultima modifica di

                    allora puoi postare tutto il codice completo?
                    e nn solo l'if

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • I
                      infosicurezza User Attivo • ultima modifica di

                      [php]
                      <?php
                      $query_leggi = "SELECT * FROM assenze";
                      $result = mysql_query($query_leggi,$dbh);
                      $numero_righe = mysql_num_rows($result);

                      @$info = mysql_fetch_array(mysql_query("SELECT id,user,giorno,mese,anno FROM assenze WHERE user = $_REQUEST[user] '{$_SESSION['login']}'"));
                      if(mysql_num_rows(mysql_query("SELECT user,giorno,mese,anno FROM articolo WHERE user = '$user' LIMIT 1")) == 1)
                      {

                      print "L'utente <font color=green> $user </font> ha memorizzato : ";
                      echo "<table border="1" width="400" height="19">
                      <tr>
                      <td bgcolor="DARKBLUE"><Font color="white"> Utente </font></td>
                      <td bgcolor="SLATEBLUE"><Font color="white"> giorno </font></td>
                      <td bgcolor="SLATEBLUE"><Font color="white"> mese </font></td>
                      <td bgcolor="SLATEBLUE"><Font color="white"> anno </font></td>
                      <td bgcolor="DARKBLUE"><Font color="white"> Assenze </font></td>
                      </tr>
                      <tr>
                      <td><font color="BLUEVIOLET">$user<font></td>
                      <td><font color="green">{$info['giorno']}<font></td>
                      <td><font color="green">{$info['mese']}<font></td>
                      <td><font color="green">{$info['anno']}<font></td>
                      <td><font color="RED"> Assente <font></td>
                      </tr>
                      </table>";
                      }
                      else
                      {
                      print"<h4><font color=red> Attenzione : </font> L'utente $user Non ha memorizzato le assenze";
                      }

                      if($numero_righe == 0)
                      {
                      print "<h3><font color=red>Attenzione : Non ci sono Assenze registrate </font> </h3>";
                      }
                      ?>
                      [/php]
                      ecco il codice!

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        thedarkita ModSenior • ultima modifica di

                        Con la @ stai nascondendo un errore di sintassi.
                        Inoltre non vi è un ciclo e stai stampando il risultato di una query con LIMIT 1.

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • I
                          infosicurezza User Attivo • ultima modifica di

                          io non vedo errori di sintassi, poi LIMIT 1 lo inserito dopo e ho provato con il for, ma da sempre gli stessi risultati solo che stampa più volte la stessa cosa

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • T
                            thedarkita ModSenior • ultima modifica di
                            WHERE user = $_REQUEST[user] '{$_SESSION['login']}'
                            ```Da un chiaro errore di sintassi SQL.
                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • I
                              infosicurezza User Attivo • ultima modifica di

                              Facendo in quel modo riesco a stampare le singole informazioni per ogni utente...
                              comunque sia siamo usciti fuori argomento... il problema resta comunque... sai come posso risolverlo ?

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • T
                                thedarkita ModSenior • ultima modifica di

                                Come ti ho detto il problema è la query, basta mettere un or die(mysql_error()) per rendersene conto.

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • I
                                  infosicurezza User Attivo • ultima modifica di

                                  Allora se tolgo l'operatore di silence, mi stamperà questo errore Notice: Undefined index: user in....ecc...

                                  se lo metto mi stampa almeno gli articoli, però di tutti gli utenti e nn di uno solo come vorrei... quindi nn credo sia quello il problema... o almeno credo

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • T
                                    thedarkita ModSenior • ultima modifica di

                                    Nascondere gli errori non è una soluzione, il problema è quello.

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • I
                                      infosicurezza User Attivo • ultima modifica di

                                      Non è una soluzione però sembra banale... hai qualche consiglio su come aggiustare ?

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • T
                                        thedarkita ModSenior • ultima modifica di
                                        
                                        WHERE user = $_REQUEST[user] '{$_SESSION['login']}'
                                        
                                        

                                        Il campo user deve essere uguale a $_REQUEST['user'] o a $_SESSION['login']?

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • I
                                          infosicurezza User Attivo • ultima modifica di

                                          @Thedarkita said:

                                          
                                          

                                          WHERE user = $_REQUEST[user] '{$_SESSION['login']}'

                                          Il campo user deve essere uguale a $_REQUEST['user'] o a $_SESSION['login']?

                                          Bhe se lo metto uguale a $_SESSION['login'] le informazioni per ogni utente nn saranno singole...

                                          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