Ditched the above this code does it
$result = mysql_query( 'SELECT categories_id FROM products_to_categories
WHERE products_id IN (SELECT products_id FROM products WHERE products_status = 1)
UNION
SELECT categories.parent_id FROM categories
WHERE categories.categories_id In (SELECT categories_id FROM products_to_categories)
UNION
SELECT parent_id FROM categories
WHERE categories_id IN( SELECT categories.parent_id FROM categories WHERE categories.categories_id In (SELECT categories_id FROM products_to_categories))
UNION
SELECT parent_id FROM categories
WHERE categories_id IN (SELECT parent_id FROM categories
WHERE categories_id IN( SELECT categories.parent_id FROM categories WHERE categories.categories_id In (SELECT categories_id FROM products_to_categories)))
UNION
SELECT parent_id FROM categories
WHERE categories_id IN (
SELECT parent_id FROM categories
WHERE categories_id IN (SELECT parent_id FROM categories
WHERE categories_id IN( SELECT categories.parent_id FROM categories WHERE categories.categories_id In (SELECT categories_id FROM products_to_categories))))
ORDER BY categories_id' );
$query="update " . TABLE_CATEGORIES . " set categories_status ='0'";
mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result))
{
echo $row['categories_id'];
$query="update " . TABLE_CATEGORIES . " set categories_status ='1' where categories_id = '".$row['categories_id']."'";
mysql_query($query) or die(mysql_error());
echo '<br>';
}
Bookmarks