Revisate la sintax del "BETWEEN" (que significa "entre") .. Y si tiens problemas con "contatenación" en PHP acude al tema "Strings" del manual oficial de PHP.
Código PHP:
$sql="SELECT DAYOFMONTH(campoFecha) as dia, MONTH(campoFecha) as mes, YEAR(campoFecha) as anio FROM tabla WHERE campoFecha BETWEEN ".$_POST["anio_inicio"]." AND ".$_POST["anio_fin"]." ORDER BY mes, dia";
Ahí se asume que le vas a pasar de un formulario (por method POST) las variables:
anio_inicio y anio_fin ..
Un saludo,