Ciao Marco ho provato a ragionare e a studiare i tuoi ragionamenti
dunque
Io ho un valore dta sul db che è un campo INTEGER. Quindi avro come data questo valore 1340143200

Per trasformarlo
<?php
$tmsp=1340143200; // data 20-06-2012
echo date('d-m-Y',$tmsp);
?>

Questa è la soluzione per la tabella di ricerca per trasformare la data da
1340143200---gg-mm-aaaa
<?php
echo "<td class=\"textDisplay1\">".$data = date("d-m-Y", $row['from_date'])."</td>";
?>

Ora la parte difficile
<?php
if ($_REQUEST["string"]<>'') {
$search_string = " AND (full_name LIKE '%".mysql_real_escape_string($_REQUEST["string"])."%' OR email LIKE '%".mysql_real_escape_string($_REQUEST["string"])."%')";
}
if ($_REQUEST["city"]<>'') {
$search_city = " AND city='".mysql_real_escape_string($_REQUEST["city"])."'";
}

if ($_REQUEST["from"]<>'' and $_REQUEST["to"]<>'') {
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." WHERE from_date >= '".mysql_real_escape_string($_REQUEST["from"])."' AND from_date <= '".mysql_real_escape_string($_REQUEST["to"])."'".$search_string.$search_city;
} else if ($_REQUEST["from"]<>'') {
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." WHERE from_date >= '".mysql_real_escape_string($_REQUEST["from"])."'".$search_string.$search_city;
} else if ($_REQUEST["to"]<>'') {
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." WHERE from_date <= '".mysql_real_escape_string($_REQUEST["to"])."'".$search_string.$search_city;
} else {
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." WHERE id>0".$search_string.$search_city;
}
if (isset($_POST['tipo3']) && $_POST['tipo3']) $query .= "data BETWEEN $data1 AND $data2 OR ";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
if (mysql_num_rows($sql_result)>0) {
while ($row = mysql_fetch_assoc($sql_result)) {
?>

E qui nulla ho provato diversi modifiche senza nessun risultato

inserendo nei due form la data gg-mm-aaaa non trova nulla
se metto
1340143200 funziona........
Dove sbaglio....
Grazie mille