Le stò provando tutte: ma come sempre ne sistemi una e cento ne vengono fuori.
Sono riuscito a far funzionare la query senza il nascondere i campi non completati, ma se implemento le if non mi funziona alla terza clausola and.
Codice PHP:
<?php
include('connect-db.php');
if ($_POST['rec_id_da'] == "") {} else {$id=" AND schedario.id BETWEEN '".$_POST['rec_id_da']."' AND '".$_POST['rec_id_a']."'";}
if ($_POST['data_da'] == "") {} else {$data=" AND schedario.data BETWEEN '".$_POST['data_da']."' AND '".$_POST['data_a']."'";}
if ($_POST['categoria'] == "") {} else {$categoria=" AND schedario.categoria = '".$_POST['categoria']."'";}
$result = mysql_query("SELECT * FROM schedario WHERE $id $data $categoria");if (!$result) { die("Errore nella query $query: " . mysql_error());}
while($row = mysql_fetch_array( $result )) {
P.S. Ma se io compilo la WHERE con gli '".$_POST['...']."' di ogni campo, poi se in quel campo non viene inserito nessun valore la where lo riconosce come NULL o come tutti *