Permitanme la intrusión, estas complicando mucho mucho (demasiado) lo que de por si es sencillo.
Vamos por partes:
Mediante un formulario con dos input type="date" le pides al usuario que ingrese dos fechas (desde/hasta) respectivamente, por ejemplo 25-03-2012 y 12-05-2012.
NOTA AL MARGEN: ¿Notaron que para escribir la palabra "DESDE" hacemos un circulo con el dedo sobre el teclado? XD
Bueno, esos dos datos se lo envías al servidor y este arma una query de este estilo:
la ejecuta y devuelve el resultado, dicho resultado lo muestras en una grilla/tabla por pantalla, todos los registros que te retorne, en cada fila pones un input type="checkbox" (por defecto desmarcado) que indique si esa fila no se debe borrar, si por ejemplo, el usuario se percata que la fecha 22-04-2012 no hay que borrarla, marca este casillero.
Luego, abajo de todo tienes un boton que diga "BORRAR LOS NO SELECCIONADOS", esto lo que hace es enviar al servidor los datos de fecha (desde/hasta) y los de todos los checkbox marcados.
El servidor arma una query como esta:
Y listo problema resuelto, solo haces dos querys, una para leer y otra para borrar, el usuario no escribe sql en ningun lado, opera visualmente sobre los datos.