Showing pagination for a date range of entries
It's difficult to give specific code help without seeing some input/output examples, but here's a go-by:

You can say that an event occurs during a date range if:


The event begins before the date range ends
and, the event ends after the date range begins


So, the pseudocode looks something like:


Prepare a DateTime representation of the range rangeStartTime (e.g. today at 00:00)
Prepare a DateTime representation of the range rangeEndTime (e.g. tomorrow at 00:00)
For each event, check if the criteria are satisfied: eventStartTime &lt; dayEndTime and eventEndTime &gt; dayStartTime
If the criteria is satisfied, include the event.


So, let's say each of my Event entries has eventStartDate and eventEndDate fields, and I want to list out all the events that occur today (i.e. including, for example, events that started yesterday and end tomorrow).

I could do something like...

{% set dateRangeStart = today|date('Y-m-d') %}

{% set dateRangeEnd = tomorrow|date('Y-m-d') %}

{% set eventsInRange = craft.entries
    .section('events')
    .eventStartDate('&lt;'~dateRangeEnd)
    .eventEndDate('&gt;'~dateRangeStart)
%}


Now eventsInRange is an ElementCriteriaModel that finds all Event entries in our date range. And since it's an ElementCriteriaModel, you can plug it into the {% paginate %} tag to get paginated results according to whatever other parameters you desire.