This is what you doing wrong:
for row in range(rowCounter):
for result in query:
You write all results from query
over the previous result
in every row, so that is why you can see only last result.
Possible solution (assuming query
is array):
for row in range(rowCounter):
result = query[row]
item = ....
.....
that way every result contained in query
will be written in one (new) row (5 columns).
You need to check if your rowCounter
is the same length like your query
(it should be if you want to show one result per row)
If you still do not understand what is wrong, feel free to ask :)