prova così e vedi che dice
codice:
<?
$page = !isset($page) ? 0 : $page;
switch($page) {
     case 1:
            list($giorno, $mese, $anno) = explode('/', $_POST['data_da']);
            $da_data = "$anno-$mese-$giorno";
            list($giorno, $mese, $anno) = explode('/', $_POST['data_a']);
            $a_data = "$anno-$mese-$giorno";
            $sql = "SELECT id, descr, DATE_FORMAT(data,'%d/%m/%Y') as xdata
                                   FROM datario
                                   WHERE data BETWEEN '$da_data' AND '$a_data'";
            $sql_data=mysql_query($sql) or die ("errore nella query: $sql

Mysql: ".mysql_error());
            if(mysql_num_rows($sql_data) > 0) {
                   $ris .="<table border=\"1\">";
                   while(list($id, $descr, $xdata) = mysql_fetch_row($sql_data)) {
                             $ris .= "<tr><td>$xdata</td><td>$descr</td></tr>";
                   }
                   $ris .="</table>";
            } else {
                   $ris .= "Nessun risultato";
            }
            break;

     default:
            $ris .="
                    <form method=\"post\">
                     <input type=\"text\" name=\"data_da\" value=\"01/01/2004\">

                     <input type=\"text\" name=\"data_a\" value=\"31/12/2005\">

                     <input type=\"submit\">
                     <input type=\"hidden\" name=\"page\" value=\"1\">
                    </form>";
            break;
}

echo $ris;
?>