I am having trouble printing 0.
Here's some meta-help. When faced with problems like this, it is very good practice to try to reduce your code to a small test case that illustrates the problem. 90+% of the time, the answer will jump out at you once the clutter is cleared, and you've posted a lot of clutter. For the remaining 10-% of cases, the fact of posting a small example will increase the chances of getting help. Many people shy away from digging through big blobs of unrelated code.
In the case of your script, the fact of data coming out of a database is irrelevant, as you might note when you attempt to demonstrate the problem in a small snippet.