Why would you say you have to include a protocol (http, etc.) in the header call? That is simply untrue. I call header with relative linking all the time. In addition, like others said, you should encourage halting the script when a redirect is encountered.
Say, for instance, the script is on a page that would delete a private message from the database. Well, if they aren't logged in or it isn't their message to delete in the first place, steer them away from the page by using a redirect. However, if you don't halt the execution of the page, the message would still end up being deleted.
Even if they don't know if they succeeded, the damage is still done. I also don't think it would have been a bad idea to touch lightly on output buffers in this tutorial. If nothing else, give them a brief description and explanation and link to another tutorial (I'm sure there is one).
All in all, it wasn't too bad. But I think the main thing is to get totally know-it-all about the topic you're writing a tutorial on, otherwise the users aren't informed as well as they could be.