Aslanım bea.

SMF gibi yapmış.

Tebrikler.
+ MySQL tamponunu hiç boşaltmamışsın. mysql_fetch_assoc'la her zaman sorgularını temizle.
+ Aldığın ID değerlerini mutlaka $_GET['id'] = (int) $_GET['id']; şeklinde kullan.
+ Çıkış yaparken,
login, user_id, hash dizelerini boş olarak değil; geçmişteki bir değer olarak ayarla. -3600 gibi...
+
if(is_guest())
echo 'login">Giriş Yap';
else
echo 'logout">Çıkış Yap'; gibi uzun bir kod yerine echo ', is_guest(is_guest()) ? 'login>Giriş Yap' : 'logout">Çıkış Yap'; yeterli.

+ İleri ki sürümler için... Eğer ki kategoriler sana her zaman lazım olacaksa, onları getCategorise gibi bir fonksiyonda çek. Tıpkı SSI.php gibi. $output_method ile array şeklinde çekim yapabilirsin.
Eline sağlık.