In short:
1) Developer - is a human being who is working on building some software/web applications using some frameworks, tools. From app to app the pattern how he is doing his job doesn't change much, sometimes new technologies replace old ones, sometimes some new requirements come in. etc...
2) Programmer - another human being (could be the same as above) who is creating completely new things. For example building those frameworks that developers use, they have a good understanding how algorithms work and where to use which. They can calculate the complexity of the functions they create. etc...
.Developers are Programmers to a greater or lesser extent.
PS: I guess we can add Engineer to this list as well :)