Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    169

    SELECT Prodotti + 1 Contratto + X Brochure

    Qualcuno può aiutarmi per questo problema?

    Ho 3 Tabelle MySql:

    la prima Prodotti: IDProdotto, NomeProdotto, DescrizioneProdotto, ecc...
    la seconda Modulistica: IDFile, NomeFile, TipoFile, Descrizione, ecc...
    la terza Brochure: IDFile, NomeFile, TipoFile, Descrizione, ecc...

    La seconda e la terza tabella contengono solo file PDF

    Ora la mia pagina fin ad ora era semplice perchè visualizzavo solo il prdotto con una select:
    SELECT * FROM Prodotti

    ora ad ogni prodotto devo visualizzare il contratto allegato e le MOLTEPLICI Brochure

    potrei aggiungere alla tabella Modulistica e alla tabella Brochure anche l'ID nel prodotto senza nessun problema !

    Però non so che tipo di SELECT utilizzare per estrapolare per ogni prodotto il suo contratto allegato e le X Brochure ?

    Ps. nella tabella Modulistica ci sono i Contratti

    qualcuno può farmi un esempio ?

    Grazie

  2. #2
    In che modo le tabelle Modulistica e Brochure sono legate alla tabella Prodotti?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    169
    Ciao,

    Sto aggiungendo ora un IDProdotto per ogni tabella !

    Grazie

  4. #4
    Originariamente inviato da Gian76
    Ciao,

    Sto aggiungendo ora un IDProdotto per ogni tabella !

    Grazie
    La select dovrebbe essere una roba del genere:

    codice:
    SELECT 
    p.IDProdotto, p.NomeProdotto, p.DescrizioneProdotto, ..., 
    m.IDFile, m.NomeFile, m.TipoFile, m.Descrizione, ..., 
    b.IDFile, b.NomeFile, b.TipoFile, b.Descrizione, ...  
    FROM 
    Prodotti p, Modulistica m, Brochure b 
    WHERE 
    p.IDProdotto = m.IDProdotto AND p.IDProdotto = b.IDProdotto
    Per i nomi delle colonne comuni ti consiglio di utilizzare degli ALIAS tipo:

    codice:
    SELECT 
    ..., 
    m.IDFile AS idFileModulistica, ..., 
    b.IDFile AS idFileBrochure, ...  
    ...
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    169
    Ho provato ad inserire il codice che mi hai postato ma al momento non mi fà vedere nulla!
    Sicuramente sbaglio qualcosa, non ho mai usato questa tipo di SELECT

    Ti posto parte del codice :

    $sql="SELECT
    p.IDProdotto, p.NomeProdotto, p.Introduzione, p.Descrizione
    m.IDFile, m.NomeFile, m.TipoFile, m.Descrizione
    b.IDFile, b.NomeFile, b.TipoFile, b.Descrizione
    FROM
    Prodotti p, Modulistica m, Brochure b
    WHERE
    p.IDProdotto = m.IDProdotto AND p.IDProdotto = b.IDProdotto
    ";
    $result=mysql_query($sql);



    while($rows=mysql_fetch_array($result)){
    ?>


    <fieldset style="width:85%" >
    <legend align="left"><font color="#000000"><?php echo $rows['NomeProdotto']; ?></font></legend>





    <table width="98%" border="0">


    <tr>
    <td align="left">Introduzione:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['Introduzione']; ?></td>
    </tr>

    <tr><td></td></tr>

    <tr>
    <td align="left">Descrizione:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['Descrizione']; ?></td>
    </tr>
    .....

    Grazie per l'aiuto !!

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    169
    ora la select funziona, avevo dimenticato qualcosa ora però non mi risolve il problema anzi perchè mi fà vedere più volte il prodotto quante sono le brochure io invece voglio:

    prodotto 1
    contratto
    brochure 1
    brochure 2
    brochure 3

    prodotto 2
    contratto
    brochure 1
    brochure 2
    brochure 3

    posto il codice ma ammetto che nell'ultima parte contratto brochure ho fatto un gran casino :



    ECCO I PRODOTTI:</p>



    <?php
    //Connessione al Databse
    include("****.php");

    //$sql="SELECT * FROM Prodotti WHERE SitoPartner = '1'";
    $sql="
    SELECT
    Prodotti.IDProdotto, Prodotti.NomeProdotto, Prodotti.Introduzione, Prodotti.Descrizione, Prodotti.Procedura, Prodotti.Note, Prodotti.SitoWeb, Prodotti.Prezzi, Prodotti.GuadagnoPartner,
    Modulistica.ID_File, Modulistica.Nome_File, Modulistica.Tipo_File, Modulistica.Descrizione, Modulistica.IDProdotto,
    Brochure.ID_File, Brochure.Nome_File, Brochure.Tipo_File, Brochure.Descrizione, Brochure.IDProdotto
    FROM
    Prodotti, Modulistica, Brochure
    WHERE
    Prodotti.IDProdotto = Modulistica.IDProdotto AND Prodotti.IDProdotto = Brochure.IDProdotto
    ";
    $result=mysql_query($sql);



    while($rows=mysql_fetch_array($result)){
    ?>


    <fieldset style="width:85%" >
    <legend align="left"><font color="#000000"><?php echo $rows['NomeProdotto']; ?></font></legend>





    <table width="98%" border="0">


    <tr>
    <td align="left">Introduzione:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['Introduzione']; ?></td>
    </tr>

    <tr><td></td></tr>

    <tr>
    <td align="left">Descrizione:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['Descrizione']; ?></td>
    </tr>

    <tr><td></td></tr>

    <tr>
    <td align="left">Procedura vendita:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['Procedura']; ?></td>
    </tr>

    <tr><td></td></tr>

    <tr>
    <td align="left">Note:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['Note']; ?></td>
    </tr>


    <tr><td></td></tr>

    <tr>
    <td align="left">SitoWeb:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['SitoWeb']; ?></td>
    </tr>


    <tr><td></td></tr>


    <tr>
    <td align="left">Prezzo/i:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['Prezzi']; ?></td>
    </tr>

    <tr><td></td></tr>

    <tr>
    <td align="left">Guadagno per il Partner:</td>
    </tr>
    <tr>
    <td align="left"><?php echo $rows['GuadagnoPartner']; ?></td>
    </tr>

    <tr><td></td></tr>

    <tr><td>



    <?php echo $rows['ID_File']; ?> <?php echo $rows['Nome_File']; ?> <?php echo $rows['Tipo_File']; ?><?php echo $rows['Descrizione']; ?>


    <?php echo $rows['ID_File']; ?> <?php echo $rows['Nome_File']; ?> <?php echo $rows['Tipo_File']; ?><?php echo $rows['Descrizione']; ?>

    </td></tr>


    </tr>

    </table>




    </fieldset>

    </form>





    <?php
    }

    mysql_close();
    ?>

    non guardare i vari td e tr perchè devo sistemarli

    Dove sbaglio ???

    Grazie

  7. #7
    Se un prodotto ha più brochure è ovvio che visualizzi più righe nelle quali il prodotto si ripete e cambia solamente la brochure. O gestisci la cosa a codice oppure effettui le select separatamente (prima recuperi il prodotto ed il contratto e poi le brochure di quel prodotto).
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    169
    "prima recuperi il prodotto ed il contratto e poi le brochure di quel prodotto"

    era questo che cercavo dall'inizio! Sicuramente mi sono espresso male !

    Mi puoi fare un esempio sulle SELECT che non so proprio come fare ?

    Grazie

  9. #9
    Prova così:

    Codice PHP:


    [b]ECCO I PRODOTTI:[/b]</p>



    <?php
    include("****.php");

    $sql="
    SELECT
    Prodotti.IDProdotto, Prodotti.NomeProdotto, Prodotti.Introduzione, Prodotti.Descrizione, Prodotti.Procedura, Prodotti.Note, Prodotti.SitoWeb, Prodotti.Prezzi, Prodotti.GuadagnoPartner,
    Modulistica.ID_File, Modulistica.Nome_File, Modulistica.Tipo_File, Modulistica.Descrizione AS Descrizione_File, Modulistica.IDProdotto 
    FROM
    Prodotti, Modulistica 
    WHERE
    Prodotti.IDProdotto = Modulistica.IDProdotto"
    ;

    $result mysql_query($sql);

    while (
    $rows mysql_fetch_array($result)) {
    ?>
    <fieldset style="width:85%" >
    <legend align="left">[b]<font color="#000000"><?php echo $rows['NomeProdotto']; ?></font>[/b]</legend>



    <table width="98%" border="0">

    <tr><td align="left">[b]Introduzione:[/b]</td></tr>
    <tr><td align="left"><?php echo $rows['Introduzione']; ?></td></tr>
    <tr><td> </td></tr>

    <tr><td align="left">[b]Descrizione:[/b]</td></tr>
    <tr><td align="left"><?php echo $rows['Descrizione']; ?></td></tr>
    <tr><td> </td></tr>

    <tr><td align="left">[b]Procedura vendita:[/b]</td></tr>
    <tr><td align="left"><?php echo $rows['Procedura']; ?></td></tr>
    <tr><td> </td></tr>

    <tr><td align="left">[b]Note:[/b]</td></tr>
    <tr><td align="left"><?php echo $rows['Note']; ?></td></tr>
    <tr><td> </td></tr>

    <tr><td align="left">[b]SitoWeb:[/b]</td></tr>
    <tr><td align="left">[url="http://<?php echo $rows['SitoWeb']; ?>"]<?php echo $rows['SitoWeb']; ?>[/url]</td></tr>
    <tr><td> </td></tr>

    <tr><td align="left">[b]Prezzo/i:[/b]</td></tr>
    <tr><td align="left"><?php echo $rows['Prezzi']; ?></td></tr>
    <tr><td> </td></tr>

    <tr><td align="left">[b]Guadagno per il Partner:[/b]</td></tr>
    <tr><td align="left"><?php echo $rows['GuadagnoPartner']; ?></td></tr>
    <tr><td> </td></tr>

    <tr><td>

    <?php echo $rows['ID_File']." - ".$rows['Nome_File']." - ".$rows['Tipo_File']." - ".$rows['Descrizione_File']; ?>
    </td></tr>

    <?php
    $id 
    $rows['IDProdotto'];
    $sqlBrochure "
    SELECT
    ID_File, Nome_File, Tipo_File, Descrizione 
    FROM
    Brochure 
    WHERE
    IDProdotto = 
    $id";

    $resultBrochure mysql_query($sqlBrochure);
    while (
    $rowsBrochure mysql_fetch_array($resultBrochure)) {
    echo 
    "<tr><td>";
    echo 
    $rowsBrochure['ID_File']." - ".$rowsBrochure['Nome_File']." - ".$rowsBrochure['Tipo_File']." - ".$rowsBrochure['Descrizione_File'];
    echo 
    "</td></tr>";
    }
    ?>

    </table>



    </fieldset>
    </form>



    <?php
    }
    mysql_close();
    ?>
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  10. #10
    Utente di HTML.it
    Registrato dal
    Nov 2011
    Messaggi
    169
    GRAZIE INFINITE !!!

    Va alla grande, questo è un problema che mi portavo dietro da tempo anche in altre applicazione, finalmente posso metterci mano e sistemarle !!!

    Grazie ancora

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.