[PHP/SQL] Onderliggende categorieen

Pagina: 1
Acties:

Onderwerpen


  • Online-Gamer
  • Registratie: Juni 2005
  • Laatst online: 25-10-2023
Hallo iedereen,

Ik heb in een osCommerce systeem een functie geschreven die alle onderliggende subcategorieen eruit haalt, deze is recursief dus gaat zo diep mogelijk.

De functie ziet er zo uit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php

function tep_get_categories_ids($categories_array = '', $parent_id = '0')
{
    if (!is_array($categories_array)) $categories_array = array();
    
    $categories_query = tep_db_query("select categories_id from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$parent_id . "'");
    while ($categories = tep_db_fetch_array($categories_query)) {
      $categories_array[] = "p2c.categories_id = '".$categories['categories_id']."'";
    
      if ($categories['categories_id'] != $parent_id) {
        $categories_array = tep_get_categories_ids($categories_array, $categories['categories_id']);
      }
    }
    
    return $categories_array;
}
  
?>


Maar als je dan veel categorieen en onderliggende categorieen hebt en je gebruikt het op meerdere plaatsen in 1 pagina heb je gigantisch veel queries en dergelijken.

Heeft misschien iemand een snellere oplossing hiervoor?
Alvast bedankt!

Riny

  • Oid
  • Registratie: November 2002
  • Niet online

Oid

Crisp heeft er een mooi artikiel over geschreven: http://crisp.tweakblogs.n...using-only-one-query.html

  • Noork
  • Registratie: Juni 2001
  • Niet online
Waarom zou je de queries op meerdere keren aanroepen, wanneer je ook gewoon eenmalig de queries kan uitvoeren en vervolgens op meerdere plekken de data array kan aanroepen?