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. problema ciclo for
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • M
      matti User Attivo • ultima modifica di

      allora:

      col ciclo for che cè nel file scorro quella tabella e metto i valori(in base alla select) nella tabella.
      nella tabella ci sn altri campi vuoti che devono essere riempiti con dei valori presi nello stesso modo da un altra tabella.
      non so come mettre l'altro ciclo for!

      il ciclo for da aggiungere è questo:

      $query = "SELECT * FROM propone";
      $ris=mysql_query($query) or die("Errore nella query:".mysql_error());

      $numrows = mysql_num_rows($ris);
      for($x=0; $x<$numrows; $x++){
      //Recupero il contenuto di ogni record rovato
      $resrow = mysql_fetch_row($ris);

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • M
        matti User Attivo • ultima modifica di

        mi sn dimenticato di scrivere che i valori devono appunto essere messi nell tabella html presente nel file

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • massy
          massy Moderatore • ultima modifica di

          Sarò limitato io ma non ti seguo 😛

          Devi prendere i dati da due tabelle diverse in pratica?
          E se sì, son collegate in qualche modo?
          Se sì anche ora, come? in che rapporto?
          1:1 1:n n:m? Cioè: per ogni dato che prendi dalla prima quanti ne corrispondono nella seconda?

          Lascia perdere il codice. Spiegati. 🙂

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • M
            matti User Attivo • ultima modifica di

            allora le due tabelle sn legate tra loro
            la tab esercizio ha come id: idesercizio
            la tab propone ha come id: idesercizio idstudente

            i valori riesco a recuperarli bene.
            solo che col il primo ciclo for prendo i valori e li stampo nella tabella
            mentre il secondo ciclo for non so come metterlo

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • M
              matti User Attivo • ultima modifica di

              si prendo i valori da due tabelle diverse

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • massy
                massy Moderatore • ultima modifica di

                Devi fare una join tra le due tabelle.

                Select * from primatabella as A LEFT join secondatabella as B ON A.idutente=B.idutente WHERE ..... ; ad esempio.

                In pratica dici:
                scegli tutto ciò che c'è nella tabella chiamata primatabella che per semplicità chiamo A, uniscila alla secondatabella che chiamo B usando come regola di unione idutente, uguale per entrambe.

                Spero di averci beccato 🙂

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • M
                  matti User Attivo • ultima modifica di

                  credo che la soluizone sia quella.ho scritto cosi:

                  
                  $query ="Select * from esercizio as A LEFT join propone as B ON A.idesercizio=B.idesercizio";
                  $ris=mysql_query($query) or die("Errore nella query:".mysql_error());
                  $numrows = mysql_num_rows($ris);
                  for($x=0; $x<$numrows; $x++){
                  //Recupero il contenuto di ogni record rovato
                  $resrow = mysql_fetch_row($ris);
                  $idesercizio=$resrow[0]; 
                  $idtutor=$resrow[1]; 
                  $titoloesercizio = $resrow[2];
                  $argomentoesercizio= $resrow[3];
                  $testo= $resrow[4];
                  $inviosoluzione= $resrow[5];
                  $stato= $resrow[6];
                   
                  
                    
                  $numrows1 = mysql_num_rows($ris);
                  for($x=0; $x<$numrows1; $x++){
                  //Recupero il contenuto di ogni record rovato
                  $resrow = mysql_fetch_row($ris);
                  $tiposcuola=$resrow[3]; 
                  
                  

                  ma mi stampa solo la prima riga di entrambe le tabelle
                  forse ma non so come devo impostare anche la clausola WHERE

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • M
                    matti User Attivo • ultima modifica di

                    ciao massy grazie mille per tutto l'aiuto.
                    ho risolto con l'aiuto che mi hai dato.
                    la select che mi ha dato è perfetta ho solo dimenticato di togliere un ciclo for.
                    ora va benissimo
                    grazie ancora
                    ciao

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • M
                      matti User Attivo • ultima modifica di

                      mi sn accorto di un problema, cioè non mi stampa i valori presi dalla tabella propone.uffa che sbaglio!!!

                      
                      $query ="Select * from esercizio as A LEFT join propone as B ON A.idesercizio=B.idesercizio";
                      $ris=mysql_query($query) or die("Errore nella query:".mysql_error());
                      $numrows = mysql_num_rows($ris);
                      for($x=0; $x<$numrows; $x++){
                      //Recupero il contenuto di ogni record rovato
                      $resrow = mysql_fetch_row($ris);
                      
                      //questi sono i valori della tabella esrcizio
                      $idesercizio=$resrow[0]; 
                      $idtutor=$resrow[1]; 
                      $titoloesercizio = $resrow[2];
                      $argomentoesercizio= $resrow[3];
                      $testo= $resrow[4];
                      $inviosoluzione= $resrow[5];
                      $stato= $resrow[6];
                      //questi sono i valori della tabella propone
                      $tiposcuola=$resrow[3]; 
                      
                      
                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • massy
                        massy Moderatore • ultima modifica di

                        prova a mettere al posto dei numeri, il nome del campo.

                        quindi invece di
                        $idesercizio=$resrow[0];
                        metti
                        $idesercizio=$resrow['idesercizio'];

                        🙂

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • M
                          matti User Attivo • ultima modifica di

                          ciao, se metto i nome mi da errore.

                          e se lascio i numeri, li considera tutti riferiti alla prima tabella.!!

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • M
                            matti User Attivo • ultima modifica di

                            che faccio??!!!

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • M
                              matti User Attivo • ultima modifica di

                              ciao massy nulla.problema ancora non risolto!!!!
                              aiuto che sto sbagliando?

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • M
                                margheritebianche User Attivo • ultima modifica di

                                Aggiungi una print dei campi dopo la fetch, da quella capisci come puntare i campi (se non lo capisci posti l'output e te lo diciamo):

                                $resrow = mysql_fetch_row($ris);
                                print_r($resrows);

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • M
                                  matti User Attivo • ultima modifica di

                                  mi esce questo

                                  ( [0] => 63 [1] => 47 [2] => aaaaaaa [3] => aaaaaaa [4] => aaaaaa [5] => email [6] => occupato [7] => 294 [8] => 63 [9] => primaria [10] => 1° [11] => aritmetica [12] => [13] => dettagliato ) aaaaaaa aaaaaaa aaaaaaemail aaaaaaa leggi esercizio
                                  occupato Array ( [0] => 62 [1] => 44 [2] => vvvvvvv [3] => vvvvvvvvv [4] => vvvvvvv [5] => email [6] => occupato [7] => 294 [8] => 62 [9] => primaria [10] => 1° [11] => aritmetica [12] => [13] => dettagliato ) vvvvvvv vvvvvvvvv vvvvvvvemail vvvvvvvvv leggi esercizio
                                  occupato Array ( [0] => 61 [1] => 44 [2] => hhhhhhhhh [3] => hhhhhhh [4] => hhhhh [5] => email [6] => occupato [7] => 294 [8] => 61 [9] => primaria [10] => 1° [11] => aritmetica [12] => [13] => dettagliato ) hhhhhhhhh hhhhhhh hhhhhemail hhhhhhh leggi esercizio
                                  occupato Array ( [0] => 60 [1] => 47 [2] => fffff [3] => fffffff [4] => fffffff [5] => email [6] => occupato [7] => 294 [8] => 60 [9] => primaria [10] => 1° [11] => aritmetica [12] => [13] => dettagliato )

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • M
                                    matti User Attivo • ultima modifica di

                                    nei campi o messo dei valori a caso

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • M
                                      margheritebianche User Attivo • ultima modifica di

                                      Allora, i valori tra quadra sono gli indici, gli elementi che hai sono tutti lì, guarda il campo che ti serve e sai che puoi beccarlo utilizzando $resrows seguito dall'indice tra quadre!

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • M
                                        matti User Attivo • ultima modifica di

                                        ok perfetto.grazie mille e scusate se non le capisco subito ma ho iniziato da poco con php

                                        ciao e grazie ancora

                                        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