Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662

    Query con select da array

    Vediamo se riesco a farmi capire...
    (la confusione ora regna in me)

    Devo fare una query su una tabella MySql usando come "where" un array ricavato da una query su un'altra tabella... spero di non aver confuso anche voi

    Una cosa tipo questa:

    Codice PHP:
    $sql_cat="select id_user from categories where patate=\"1\"";
    $res_cat mysql_query($sql_cat,$connect);
    $row_cat mysql_fetch_array($res_cat);

    $sql_genere="select * from green_data where id = \"".$row_cat.\"";
    $res_genere mysql_query($sql_genere,$connect);
    $row_genere mysql_fetch_array($res_genere); 
    Raga non so proprio come fare... ho provato con IN ($row_cat) ma non da segni di vita.
    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

  2. #2
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    prova così

    Codice PHP:
    $sql_genere="select * from green_data where id IN (\"".implode(",",$row_cat).")"

  3. #3
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662
    Dammi l'indirizzo che ti mando un caciocavallo di bufala italo-argentina maculata!! Sei un mito!

    L'unica cosa... il risultato è questo:

    select * from green_data where id IN (157,157)

    ..è normale che l'id venga ripetuto due volte?
    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

  4. #4
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    no! non è normale vuol dire che nel vettore è contenuto 2 volte quindi è sbagliata la logica di "riempimento" del vettore

  5. #5
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662
    Niente, non va...
    Il codice che ho è questo:

    Codice PHP:
    $sql_cat="select id_user from categories where brand=\"1\"";
    $res_cat mysql_query($sql_cat,$connect);
    $row_cat mysql_fetch_array($res_cat);

    $sql_genere="select * from a_data where id_user IN (".implode(",",$row_cat).")";
    $res_genere mysql_query($sql_genere,$connect);
        

    echo 
    "


    "
    .$sql_genere."


    "

    In tabella ho 2 record su 10 che hanno "brand" impostato a 1, ma il risultato è sempre
    select * from a_data where id IN (157,157)

    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

  6. #6
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    e che id hanno questi 2 record?

  7. #7
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    no scusa il problema è qui
    $row_cat = mysql_fetch_array($res_cat);
    ti prende solo la prima riga

  8. #8
    Utente di HTML.it L'avatar di bANART
    Registrato dal
    Jul 2005
    Messaggi
    662
    azz... e come faccio a creare un array che all'interno mi includa tutti gli id dei record che hanno 1 come valore di brand?
    Matteo Coletta - fotografia
    Fotografo Lanciano - Fotografia a Lanciano e Pescara

  9. #9
    con una query di tipo join

  10. #10
    Utente di HTML.it L'avatar di bstefano79
    Registrato dal
    Feb 2004
    Messaggi
    2,520
    prova una cosa del genere
    Codice PHP:
    <?php
    function mysql_fetch_rowsarr($result) {
          
    $got=array();
          while (
    $row mysql_fetch_array($result)) {
            
    array_push($got$row[0]);
        }
      return 
    $got;
    }



    $sql_cat="select id_user from categories where brand=\"1\""
    $res_cat mysql_query($sql_cat,$connect); 
    $row_cat mysql_fetch_rowsarr($res_cat); 

    $sql_genere="select * from a_data where id_user IN (".implode(",",$row_cat).")"
    $res_genere mysql_query($sql_genere,$connect); 
         

    echo 
    "


    "
    .$sql_genere."


    "
    ;
    ?>

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.