Today just isn't my day!

ok the only changes I made were to the shipping module for "zone rates" I reset up my table rates. I tested it once after putting a few rates in and it worked fine then added the whole kit&caboodle and now when i go to the cart it seems fine until i click a category and I get these errors at the top


Warning: Variable passed to each() is not an array or object in /home/protect/public_html/includes/classes/db/mysql/query_factory.php on line 114

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/protect/public_html/includes/classes/db/mysql/query_factory.php:114) in /home/protect/public_html/includes/functions/sessions.php on line 102

Warning: Cannot modify header information - headers already sent by (output started at /home/protect/public_html/includes/classes/db/mysql/query_factory.php:114) in /home/protect/public_html/includes/init_includes/init_templates.php on line 78

and this where the products should be

Warning: Division by zero in /home/protect/public_html/includes/classes/split_page_results.php on line 76
1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-0, MAX_DISPLAY_PRODUCTS_LISTING' at line 7
in:
[select p.products_quantity, p.products_id, p.products_type, p.manufacturers_id, p.products_price, p.products_tax_class_id, pd.products_description, IF(s.status = 1, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status =1, s.specials_new_products_price, p.products_price) as final_price, p.products_sort_order, p.product_is_call, p.product_is_always_free_shipping, p.products_qty_box_status from protect_products_description pd, protect_products p left join protect_manufacturers m on p.manufacturers_id = m.manufacturers_id, protect_products_to_categories p2c left join protect_specials s on p2c.products_id = s.products_id where p.products_status = 1 and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '1' and p2c.categories_id = '8' limit -0, MAX_DISPLAY_PRODUCTS_LISTING]

anyone with any help would be my hero for the day.

the only thing i can think of is that maybe the table rate is too large? for example here is my table rates for zone 1 which is the US

(yes i know it's ALOT but i gotta do what i gotta do until shipping can be based on categories) in case you are wondering all products that are non-hidden cameras are listed as weight0.01 and all hidden camera products are listed as weight 1 thats why the table is so large just in case so fool orders up to 99 products or 15 hidden cameras and then this is pretty much duplicated for zone 2 (Canada) and zone 3 (intern'l) just with different prices

*message is too long please con't to next post*