Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    84

    Select COUNT su più campi

    Ciao a tutti,
    sono alle prese con una query che non riesco ad ottenere, spero in un vostro auto.

    Dunque ho una tabella composta in questo modo:
    tabella negozio_prodotti --> id | titolo | id_voce1 | id_voce 2
    tabella negozio_voci --> id_voce | voce

    L'utente dovrà aver la possibilità di eliminare i valori dalla tabella 'voci' solo se quest'ultimi non sono collegati alla tabella prodotti.

    Con il codice seguente funziona, però logicamente disabilita solo i checkbox collegati al campo id_voce1, putroppo non riesco a collegare anche il campo id_voce2

    Codice PHP:
    <?php $query_rs_voci "SELECT COUNT(negozio_prodotti.id), negozio_voci.*
    FROM negozio_voci  LEFT JOIN negozio_prodotti ON negozio_voci.id_voce = negozio_prodotti.id_voce1
    GROUP BY negozio_voci.id_voce ORDER BY voce ASC"

    $rs_voci mysql_query($query_rs_voci$conn) or die(mysql_error());

    while (
    $row_rs_voci mysql_fetch_assoc($rs_voci)){ 
    if(
    $row_rs_voci['COUNT(negozio_prodotti.id)']>0){ 
    $disabled 'disabled'; } 
    else { 
    $disabled $row_rs_voci['id_voce'];} ?>

    <tr>
    <td align="center" style="text-align:center; vertical-align:middle;">
    <input type="checkbox" class="checkbox" name="item[]" id="check" value= "<?php echo $row_rs_voci['id_voce']; ?><?php echo $disabled ?>/>
    </td>
    <td align="center" style="vertical-align:middle;"><?php echo $row_rs_voci['id_voce']; ?></a></td>
    <td style="vertical-align:middle;"><?php echo $row_rs_voci['voce']; ?></td>
    </tr>

    <?php }  ?>
    Grazie a tutti

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Le richieste su come scrivere una query vanno nella sezione "Database", si tratta di SQL, PHP con la query in se non c'entra niente.

  3. #3
    In ogni caso, stante la precisazione del moderatore, aggiungi un'altra join sulla tabella ma sulla seconda voce.

    select from tabella1 t1
    join tabella2 t2 on campot1 = campot2
    join tabella2 t2a on campot1 = campot2a


  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2006
    Messaggi
    84
    @Alhazred
    scusami per l'errore, la prossima volta starò più attento

    @Dascos
    Grazie per l'aiuto, ho risolto in questo modo:

    Codice PHP:
    $query_rs_voci "SELECT COUNT(n1.id), COUNT(n2.id), COUNT(n3.id), COUNT(n4.id), COUNT(n5.id), COUNT(n6.id), negozio_voci.*
    FROM negozio_voci
    LEFT JOIN negozio_prodotti AS n1 ON negozio_voci.id_voce = n1.id_voce1
    LEFT JOIN negozio_prodotti AS n2 ON negozio_voci.id_voce = n2.id_voce2
    LEFT JOIN negozio_prodotti AS n3 ON negozio_voci.id_voce = n3.id_voce3
    LEFT JOIN negozio_prodotti AS n4 ON negozio_voci.id_voce = n4.id_voce4
    LEFT JOIN negozio_prodotti AS n5 ON negozio_voci.id_voce = n5.id_voce5
    LEFT JOIN negozio_prodotti AS n6 ON negozio_voci.id_voce = n6.id_voce6                  
    GROUP BY negozio_voci.id_voce ORDER BY voce ASC"


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.