I would recommend starting with some basic linear algebra, if you haven't done so already, — it is essential for any kind of serious graphics programming. For that, I would recommend Paul Bourke's site. It is also really inspiring.
As dm.skt correctly noted, you don't want to read a book that is not written with modern OpenGL in mind from the beginning — most of them would focus on fixed-function pipeline, which is not just no longer used, it is emulated. Here, I can recommend a great (and free) online book Learning Modern 3D Graphics Programming by Jason L. McKesson. From the intro:
Virtually all of the aforementioned
sources instruct beginners using
something called “fixed
functionality.” This represents
configurations in older graphics
processors that define how a
particular rendering operation will
proceed. It is generally considered
easiest to teach neophyte graphics
programmers using the fixed function
This is considered true because it is
easy to get something to happen with
fixed functionality. It's simpler to
make pictures that look like something
real. The fixed function pipeline is
like training wheels for a bicycle.
There are downsides to this approach.
First, much of what is learned with
this approach must be inevitably
abandoned when the user encounters a
graphics problem that must be solved
with programmability. Programmability
wipes out almost all of the fixed
function pipeline, so the knowledge
does not easily transfer.
A more insidious problem is that the
fixed function pipeline can give the
illusion of knowledge. A user can
think they understand what they are
doing, but they're really just
copy-and-pasting code around.
Programming thus becomes akin to
magical rituals: you put certain bits
of code before other bits, and
everything seems to work.
This should give you a good starting point.