• User Attivo

    Modulo per la ricerca di risultati da un database

    Sto letteralmente impazzendo per capire come fare per realizzare un ciclo che mi permetta di mostrare i risultati di un database a seconda dei criteri specificati dall'utente...

    Mi spiego:

    Ho un database di articoli con diversi campi, ad esempio:
    | NOME_ARTICOLO | CATEGORIA | ALTROCAMPO | ENNESIMO CAMPO |

    Ora, ho creato un form che permette all'utente di selezionare i parametri della ricerca attraverso dei campi <SELECT> e ho realizzato la query che interroga il database senza un WHERE. Al suo posto ho messo una variabile $where_clause che vorrei appunto riempire con le scelte effettuate dall'utente.

    I parametri di ricerca vengono indicati dall'utente tramite dei <SELECT>, ad esempio se l'utente seleziona "categoria = 5" vorrei ricercare tutti gli elementi che appartengono a questa categoria, $where_clause diverrebbe quindi "WHERE categoria = '5'". Fin qui tutto semplice, il problema si pone quando l'utente seleziona più parametri di ricerca, ad esempio "categoria = 5" e "altrocampo = 3", dovrei avere un $where_clause simile a questo: WHERE categoria = '5' AND altrocampo = '3'

    E così via per ogni parametro impostato dall'utente.

    Mi sfugge quale ciclo utilizzare per fare questo, non riesco ad arrivarci proprio a livello di logica image

    Considerando anche che tra le variabili $_GET può figurare anche $_GET['pag'] che serve per la paginazione qualcuno potrebbe chiarirmi le idee? image


  • User Attivo

    se i campi, e quindi i select sono finiti basta che li controlli uno a uno e mano a mano li aggiungi alla stringa $where_clause...
    oppure non ho capito la domanda 🙂