You have however missed a couple of important bits out. As mentioned above the db stuff is vague. Also you mention fingerprint, fingerprintkey and fingerprintchecks variables without explaining them too well. Your article makes it appear that they are just used as salt to encrypt the user agent. You use fingerprintkey when setting it but just fingerprint in the md5 encryption, and fingerprintchecks is only used once when it is set as private and 0.
As I said, excellent start but worth finishing (even after the months that have passed)
As an addition you need to update the link above to actually go to the php articles page -> http://josephcrawford.com/php-articles/ It appears that you redirect anything with www. at the start to your home page. I suggest you just remove the www. instead.
I think you covered most thing that the bad official documentation leaves out.
I think you should talk about the authentication process though rather than linking to another page which was mostly intended for external applications.