Ricerca multipla

  • Creatore Discussione Creatore Discussione bartjsp
  • Data di inizio Data di inizio

bartjsp

Nuovo Utente
21 Feb 2008
4
0
0
Salve, sono nuovo del forum ed ecco il mio primo quesito:
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?

Grazie,
ciao.
 
Soluzione

Soluzione trovata:

PHP:
$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);

funziona, ma l'unico problema è che se aggiungo questo pezzo:

PHP:
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 . "'";
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
 
Ma se provi a stampare il valore di $data_dal ti restituisce qualcosa?
 
Ho risolto mettendo tutto il codice all'interno di un ciclo if e gli faccio fare un controllo sui campi.
 

Discussioni simili