Hirdetés

Új hozzászólás Aktív témák

  • radi8tor

    MODERÁTOR

    válasz pelyib #20160 üzenetére

    Köszi szépen, ez valóban eltüntette a warningokat. :R
    És igen, más nem volt körülötte csak ez a két warning szemetelte tele az error logot mióta PHP ver 7.3.22 lett az oldal alatt.

    Amúgy ez a teljes kódrészlet arról a területről, hátha látod benne a választ a kérdésedre:

            $path = array();
            $categories = $this->db->query("SELECT c.category_id, c.parent_id FROM " . DB_PREFIX . "product_to_category p2c LEFT JOIN " . DB_PREFIX . "category c ON (p2c.category_id = c.category_id) WHERE product_id = '" . (int)$product_id . "'")->rows;
            
            foreach($categories as $key => $category) {
                $path[$key] = '';
                if (!$category) continue;
                $path[$key] = $category['category_id'];
                
                while (!empty($category['parent_id'])) {
                    $path[$key] = $category['parent_id'] . '_' . $path[$key];
                    $category = $this->db->query("SELECT category_id, parent_id FROM " . DB_PREFIX . "category WHERE category_id = '" . $category['parent_id']. "'")->row;
                }
                
                $path[$key] = $path[$key];
                $banned_cats = $this->config->get('full_product_path_categories');
                
                if (
      is_countable($banned_cats) 
      && is_countable($categories)  // jo lenne tudni melyik, mert ezzel csak elrejtjuk a hibat
      && count($banned_cats) 
      && (count($categories) > 1)
    ) {
            if (in_array($path[$key], $banned_cats)) {
                            unset($path[$key]);
                    } else if (preg_match('#[_=](\d+)$#', $path[$key], $cat)) {
                        if (in_array($cat[1], $banned_cats)) {
                            unset($path[$key]);
              }
                    }
                }

Új hozzászólás Aktív témák