You'd better do not use count() after group by and order by.
But you can use:
select uid,author,count(tid) as a from blog_blog where postdate>='".$weekdate."' group by uid,a order by a desc limit 0,5
But you can use:
select uid,author,count(tid) as a from blog_blog where postdate>='".$weekdate."' group by uid,a order by a desc limit 0,5
这样试试