Buonasera,
sto creando un filtro multiplo per selezionare gli elementi di una tabella in base ai vari parametri impostati.
Il form è così composto:
Quindi si può inserire il nome del prodotto, il seriale e selezionare uno o entrambi i checkbox 'stato'
Successivamente eseguo la query per recuperare i risultati:
Funziona quasi tutto correttamente fino a quando viene selezionato solo uno dei due checkbox 'stato'. Se invece vengono selezionati entrambi la query non restituisce nessun risultato. Potreste indicarmi dove sta l'errore nel mio codice ed eventualmente come risolverlo?
sto creando un filtro multiplo per selezionare gli elementi di una tabella in base ai vari parametri impostati.
Il form è così composto:
PHP:
<textarea cols='60' rows='1' name='nome'></textarea>
<textarea cols='60' rows='1' name='seriale'></textarea>
<input type='checkbox' name='stato[]' value='NUOVO'>NUOVO
<input type='checkbox' name='stato[]' value='DA RIPARARE'>USATO
Quindi si può inserire il nome del prodotto, il seriale e selezionare uno o entrambi i checkbox 'stato'
Successivamente eseguo la query per recuperare i risultati:
PHP:
$nome_prodotto = mysql_real_escape_string($_POST['nome']);
$seriale = mysql_real_escape_string($_POST['seriale']);
$stato = $_POST['stato'];
$stato1 = implode(" OR stato = ", $stato);
$query="SELECT * FROM tabella WHERE nome = '$nome_prodotto'";
if($seriale) {
$query.=" AND seriale ='$seriale'";
}
if($stato) {
$query.=" AND stato = '$stato1'";
}
$query=mysql_query($query);
Funziona quasi tutto correttamente fino a quando viene selezionato solo uno dei due checkbox 'stato'. Se invece vengono selezionati entrambi la query non restituisce nessun risultato. Potreste indicarmi dove sta l'errore nel mio codice ed eventualmente come risolverlo?