Red Cross - 1-888-BLOOD-88, www.redcross.org
I've also heard that 1-800-GIVE-LIFE reaches them.
There are two places near San Francisco that you can give blood, one is the
Peninsula Blood Center at 1791 El Camino Real in Burlingame, and
the other is
at 270 Masonic in SF. (I don't remember the name of the SF one). I was at
Peninsula earlier today, there is an approximately 2.5-4 hour wait to give
blood there. The best bet is to go there, fill out paperwork and then go
back later today or tomorrow to donate.