[php]: ricerca multipla

Ho una form con 6 campi, come creo la query combinata per estrarre i record se ad esempio non compilo uno dei campi del form?

inviato 8 anni fa
Nando
X 0 X
$query = "SELECT * FROM tabella WHERE ";

$condizioni = array();

if(!empty($_POST['campo1'])) 
 $condizioni[] = "campo1 = '" . $_POST['campo1'] . "'";

if(!empty($_POST['campo2'])) 
 $condizioni[] = "campo2 = '" . $_POST['campo2'] . "'";

if(!empty($_POST['campo3'])) 
 $condizioni[] = "campo3 = '" . $_POST['campo3'] . "'";

$query = $query . implode(" AND ", $condizioni);

$result = mysql_query($query);

:bye:

risposto 8 anni fa
Gianni Tomasicchio
X 0 X

Lo script funziona, ma se aggiungo questo pezzo:

if(!empty($_REQUEST['data_ingresso_dal']))
$data_dal = english_date($_REQUEST['data_ingresso_dal']);
$condizioni[] = "data_ingresso >= '" . $data_dal . "'";
 
if(!empty($_REQUEST['data_ingresso_al']))
$data_al = english_date($_REQUEST['data_ingresso_al']);
$condizioni[] = "data_ingresso <= '" . $data_al . "'";

]

e la ricerca la faccio soltanto per provincia, non solo non mi trova nulla, ma mi restituisce il seguente errore:

Notice: Undefined variable: data_dal in c:\www\viavas\ricerca_decreti.php on line 11 Notice: Undefined variable: data_al in c:\www\viavas\ricerca_decreti.php on line 15

risposto 8 anni fa
Nando
X 0 X

Alla fine ho risolto mettendo tutto il codice che dava errore in un controllo generale sui campi.

risposto 8 anni fa
Nando
X 0 X

Negli IF che hai riportato mancano le parentesi graffe!!!

risposto 8 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda