Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    come si fanno select multiple?

    ciao a tutti come si fanno le select multple? Perchè col join non'è che ci ho capito granchè.

    dovrei unire questa select:

    Codice PHP:
        $sql "SELECT * FROM a_allievi WHERE id_allievi=$allievo";
        
    $result mysql_query($sql,$conn);
        
    $row mysql_fetch_array($result); 
    con questa:

    Codice PHP:
    $sql mysql_query("SELECT * FROM a_corsi") or die(mysql_error()); 
    e vorrei che l'ID del corso fosse associato all'ID dell'allievo. Come devo fare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Immaginando la tabella a_allievi così composta
    id_allievo (primary auto_increment)
    Nome

    E la tabella a_corsi così composta
    id_corso (primary auto_increment)
    id_allievo
    Corso

    La select che prende tutti i corsi a cui partecipa l'allievo sarà
    SELECT Nome, Corso
    FROM a_allievi, a_corsi
    WHERE a_allievi.id_allievo = a_corsi.id_allievo AND a_allievi.id_allievo = $id_allievo


    --------------
    In realtà per fare le cose fatte bene servirebbero 3 tabelle

    a_allievi
    id_allievo
    Nome

    a_corsi
    id_corso
    Descrizione

    a_partecipanti
    id_corso
    id_allievo

    Con questo query

    SELECT Nome, Descrizione
    FROM a_allievi, a_corsi, a_partecipanti
    WHERE
    a_partecipanti.id_allievo = a_allievi.id_allievo
    AND
    a_partecipanti.id_corso = a_corsi.id_corso
    AND
    a_allievi.id_allievo = $id_allievo

  3. #3
    Grazie Leinod!

    ho provato il secondo metodo che mi hai consigliato, ho fatto così:

    Codice PHP:
        <?
                                        $query
    ="SELECT * FROM a_allievi, a_corsi, a_corsi_allievi 
                                        WHERE a_corsi_allievi.id_allievi = a_allievi.id_allievi 
                                        AND a_corsi_allievi.id_corsi = a_corsi.id_corsi 
                                        AND a_allievi.id_allievi = 
    $id_allievi";
                                        
    $ris_query=mysql_query($query$conn);
                                        while(
    $row=mysql_fetch_array($ris_query)){?>

         <tr>
        <td height="41"><span class="testo_grigio_bold">[url="<?=$PHP_SELF?>?allievo=<?=$row[id_allievi]?>&riga=3"]<?=$row['id_corsi']?>[/url]</span></td>
        <td align="right"><span class="testo_grigio_bold"><?=$row['nome']?></span></td>
        <td></td>
        <td align="left"><span class="testo_grigio_bold"><?=$row['nascita']?></span></td>
        <td align="right"><span class="testo_grigio_bold"><?=$row['citta']?></span></td>
          </tr>
          <tr>
        <td height="1" colspan="5" valign="top" bgcolor="BF9BB5"></td>
        </tr>
        <?
            
    }
    ?>
    però mi da questo errore

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /web/htdocs/www.sito.it/home/new/allievi/inserimento_allievi.php on line 209

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    sostituisci questa riga
    Codice PHP:
    $ris_query=mysql_query($query$conn); 
    con questa
    Codice PHP:
    $ris_query=mysql_query($query$conn) or die (mysql_error()); 
    E dicci cosa ti stampa

  5. #5
    ora mi da questo errore

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 4

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Ho un sospetto, ma per conferma mettimi questa istruzione

    Codice PHP:
    echo "

    $query

    "

    Una riga prima del mysql_query

    Copia e incolla il risultato e vediamo, che forse ne usciamo

  7. #7
    ora mi da questo errore

    Codice PHP:
    SELECT FROM a_allievia_corsia_corsi_allievi WHERE a_corsi_allievi.id_allievi a_allievi.id_allievi AND a_corsi_allievi.id_corsi a_corsi.id_corsi AND a_allievi.id_allievi =


    Warningmysql_fetch_array(): supplied argument is not a valid MySQL result resource in /web/htdocs/www.sito.it/home/new/allievi/inserimento_allievi.php on line 210 

  8. #8

  9. #9
    alla riga 210 ho questo

    Codice PHP:
    while($row=mysql_fetch_array($ris_query)){?> 

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Come vedi la query è questa

    SELECT * FROM a_allievi, a_corsi, a_corsi_allievi WHERE a_corsi_allievi.id_allievi = a_allievi.id_allievi AND a_corsi_allievi.id_corsi = a_corsi.id_corsi AND a_allievi.id_allievi =

    Questo significa che la variabile $id_allievi non è valorizzata e quindi viene il query con niente dopo gli uguale che ho evidenziato in neretto

    Devi correggere lo script in modo che $id_allievi sia correttamente valorizzato

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.