osCommerce France : Accueil Forum Portail osCommerce France Réponses aux questions Foire aux contributions

Bienvenue invité ( Connexion | Inscription )

4 Pages V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Img des catégories mères&filles dans la boxe catégories, ---| Résolu & optimisé ! |---
NoZic
posté 15 Sep 2008, 09:19
Message #26


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Bonjour,

Bon bah aujourd'hui ça être tendu... j'ai encore 3g dans le sang, c'est la voiture qui m'a amené au taff (comme sur un rail...)... rolleyes.gif

Mais comme shoprun, à mon sens, faut tout refaire... le code de la boxe d'origine ne correspond plus à ton besoin...

Mais chez moi, ton code posté à mon attention fonctionne impeccable hormis pour l'affichage de la catégorie mère...

Si on reprend le post dont tout part (celui pour padaben... limiter affichage des sous catégories dans la box categorie, retirer catégories principales), je donnais une solution qui était finalement mieux en fait... comment l'expliquer... la tienne était plus simple pour la retouche (un seul changement...) mais la mienne ne touchait pas du tout à la construction du $tree donc tu gardais l'arborescence impeccable. Du coup, tout devrait bien fonctionner sans tout retoucher mais en partant de là... je regarde mais je promet rien... l'écran est flou (pas l'affichage, l'écran entier, même les bords... ils bougent... mrgreen.gif )

Ce message a été modifié par gentag - 15 Sep 2008, 09:20.


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 
delete
posté 15 Sep 2008, 09:25
Message #27


2eme dan OSC
Icône de groupe

Groupe : Bannis
Messages : 3022
Inscrit : 12-November 07
Lieu : Massilia
Membre no 19718



Citation (gentag @ 15 Sep 2008, 10:19) *
Mais comme shoprun, à mon sens, faut tout refaire... le code de la boxe d'origine ne correspond plus à ton besoin...


C'est pour ça que je lui ai demandé ces précisions excl.gif D'après les premières réponses à ces précisions, je penses que nous sommes sur la même longueur d'onde (même si tu as 3g laugh.gif).

Il est souvent mieux d'avoir une page blanche de la remplir et de tester que de trifouiller du code.

Go to the top of the page
 
cocomino
posté 15 Sep 2008, 10:05
Message #28


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1690
Inscrit : 10-October 06
Lieu : Rives du Lez
Membre no 12571



oki les garçons.
voici le scénario :
on a dans le header un menu avec les catégories mère [parent_id =0] (actuellement sur mon site, c'est le module main_categories qui permet d'y accéder, mais qu'importe)
ensuite la boxe catégories apparaît suivant les conditions suivantes :
cas 1 : je cliques sur le menu : la catégorie mère n'a pas de ss categories, juste des produits -> la boxe categories n'apparaît pas, c'est inutile, l'arborescence serait vide : donc on a l'affichage direct du listing produit.
cat 2 : je cliques sur le menu : la catégorie mère a des ss catégories -> la boxe catégories apparaît avec l'image de la catégorie mère. je cliques sur une ss catégories -> l'image de la sous catégorie vient remplacer celle de la catégorie mère. etc, etc ...
l'arbre continu de se déployer si j'ai des sous sous catégories au fur et à mesure (fonctionnement normal de la boxe catégories originale)
cas 3 : je suis sur la page product_info : la boxe catégories apparaît en fonction des cas 1 et 2.
en résumé, avec mon code, la boxe catégories n'apparaît que dans 3 cas.
si vous êtes sur la page product_new.php, product_review.php, etc , la boxe n'a pas lieu d'apparaître puisque le chemin n'est pas définit.(multi-produits et multi-catégorie)

les seules choses que j'ai affiné dans mon code est :
d'une part la conditionnelle dans la column left :
Code
if (($cPath != 0) xor (tep_has_category_subcategories($cPath) == 0 )){
  if ((USE_CACHE == 'true') && empty($SID)) {
    echo tep_cache_categories_box();
  } else {
    include(DIR_WS_BOXES . 'categories.php');
  }
  }

et ma fonction dans general.php (pour gérer la présence ou non d'une image):
Code
function tep_get_category_image() {
    global $languages_id;
    global $current_category_id;        
    if (empty($language)) $language = $languages_id;    
    $category_image_query = tep_db_query("select c.categories_id, cd.categories_id, cd.categories_name as name, c.categories_image as image from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . $current_category_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "'");
    $category_image = tep_db_fetch_array($category_image_query);
    if (tep_not_null($category_image['image'])){            
    return tep_image(DIR_WS_IMAGES . $category_image['image'] , $category_image['name'], 128, 128);
    }else{
    return false;
    }    
    }


Ce message a été modifié par coconimo - 15 Sep 2008, 10:06.


--------------------
"Pourquoi vois-tu la paille qui est dans l'oeil de ton frère et n'aperçois-tu pas la poutre qui est dans ton oeil ?".(Saint Luc, VI-41)
Go to the top of the page
 
NoZic
posté 15 Sep 2008, 12:04
Message #29


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Re,

J'étais en train de me dire... pourquoi afficher le nom de la catégorie principale dans la boxe et pas dans le titre de la boxe... plus sympa et du coup ça simplifie tout (enfin presque...).

Pour faire ça juste un petit truc, dans "\catalog\includes\boxes\categories", juste avant ça (vers ligne 59):
Code
  $info_box_contents = array();
  $info_box_contents[] = array('text' => BOX_HEADING_CATEGORIES);

  new infoBoxHeading($info_box_contents, true, false);
rajouter ça :
Code
if ($cPath != 0) {
  $arr = explode('_', $cPath);
  $main_cat = $arr[0];
  $cat_name_query = tep_db_query("select cd.categories_name from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . $main_cat . "' and cd.categories_id = c.categories_id and cd.language_id='" . (int)$languages_id ."'");
  $cat_name = tep_db_fetch_array($cat_name_query);
  if (strlen($cat_name['categories_name']) != 0) {
    $strg_cat_name = $cat_name['categories_name'];
  } else {
    $strg_cat_name = BOX_HEADING_CATEGORIES;
  }
}
et en profiter au passage pour remplacer BOX_HEADING_CATEGORIES par $strg_cat_name dans les trois lignes de code citées au-dessus.

Après laisser soit ton code filé à padaben soit le mien (peu importe les deux fonctionnent, perso, j'ai pris le mien) pour afficher juste les sous-catégories dans la boxe.

Ne reste qu'à modifier un peu ta fonction d'affichage d'image et le tour est joué, pour cette partie je vois cet après-midi, faut que je remplisse mon estomac là j'en peux plus, ça tourne à l'aigre là-dedans... vite, de la bouffe pour éponger, j'ai presque mal tellement j'ai le bide en vrac...

Ce message a été modifié par gentag - 15 Sep 2008, 12:06.


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 
cocomino
posté 15 Sep 2008, 14:00
Message #30


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1690
Inscrit : 10-October 06
Lieu : Rives du Lez
Membre no 12571



alors ne mélangeons pas tout.
le code pour padaben est sur un autre post, et il est confronté à un problème de compatibilité avec un module de categories_tab.(mon code est totalement fonctionnel avec celui d'une autre contrib que Delete a laissé sur un autre post [un trucmuche en css]) et ça, je le suis pas email (oui, je fais aussi de la hotline payante, et bien plus cher que ce que penses Delete tongue.gif )
la question au départ été de savoir si on pouvait se servir du code existant de la boxe catégories originale pour arriver à mes fins.
Shoprun a été très clair : non.
Donc ma solution actuellement est la plus simple :
- une double conditionnelle dans la colonne gauche
- une modification dans la première requête de la boxe catégories.
- une fonction (et donc une requête supplémentaire) dans le fichier general.
- l'appel de la fonction dans la construction de la boxe.

Le tout ? une future contrib pour la boxe catégorie qui n'existe pas encore.(en gestation pour un code propre et portable, biensûr smile.gif basé sur la librairie jquery, autant dire que je n'en suis qu'au prémisse actuellement.)

Ce message a été modifié par coconimo - 15 Sep 2008, 14:01.


--------------------
"Pourquoi vois-tu la paille qui est dans l'oeil de ton frère et n'aperçois-tu pas la poutre qui est dans ton oeil ?".(Saint Luc, VI-41)
Go to the top of the page
 
NoZic
posté 15 Sep 2008, 14:17
Message #31


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Re,

Bah je ne mélangeais pas... au contraire, je finis plutôt...

Ca te plaisais pas l'idée de la cat princ en titre de boxe ?? parce que si oui c'est presque fini et fonctionnel de mon côté... ne reste que modifier l'affichage de ton image pour avoir la cat princ si dessus et hop mais j'attendais ton retour sur l'idée (et oui après tout tu es peut-être obligée de mettre la cat princ dans la boxe, je ne sais pas moi, un cahier des charge qui traine par exemple... au pire même ça je pense pouvoir le faire...).

Pour aller encore plus loin, je dirais même qu'il faudrait éviter de réutiliser la boxe d'origine, elle va requêter comme une folle pour créé le tree alors que tu n'en as pas besoin... mais elle a quand même un gros avantage... si tu actives son cache, elle ne requête plus du tout et affiche le cache donc finalement elle est pas si mal...

Ce message a été modifié par gentag - 15 Sep 2008, 14:18.


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 
delete
posté 15 Sep 2008, 14:33
Message #32


2eme dan OSC
Icône de groupe

Groupe : Bannis
Messages : 3022
Inscrit : 12-November 07
Lieu : Massilia
Membre no 19718



Citation (coconimo @ 15 Sep 2008, 15:00) *
(mon code est totalement fonctionnel avec celui d'une autre contrib que Delete a laissé sur un autre post [un trucmuche en css])


Je me rappelles effectivement avoir pondu un truc mono-requête pour l'affichage des catégories ... car le menu d'origine osC est gourmant en ressources ...

Citation (coconimo @ 15 Sep 2008, 15:00) *
et ça, je le suis pas email (oui, je fais aussi de la hotline payante, et bien plus cher que ce que penses Delete tongue.gif )


J'attends des dividendes ... tongue.gif
Go to the top of the page
 
NoZic
posté 15 Sep 2008, 15:01
Message #33


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Plus de chat... ?

Tant pis, je finis comme ça et posterais le truc, on verra si ça lui convient...

[EDIT] Ah, je sais pourquoi pas de réponses, si je fournis une solution complète ici, plus de hotline payante par mail pour padaben... fini les tunes pour le chat... plus de croquettes... bon bah je fais vite... biggrin.gif

Ce message a été modifié par gentag - 15 Sep 2008, 15:04.


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 
NoZic
posté 15 Sep 2008, 17:01
Message #34


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Bon bein ça fonctionne parfaitement... les dernières modifs étaient tranquille en plus... juste que je suis en lutte avec moi-même aujourd'hui donc c'est long...

Donc, pour ne pas compliqué tout ça plus que ce ne l'est déjà... pas simple entre tous les codes etc... je reprend tout depuis le début (même si ça va faire lourd... désolé mais ce serait trop compliqué de dire : aller sur ce post là et prenez juste telle partie du code puis aller sur cet autre post et copiez telle partie, etc... -> incompréhensible.... j'étais en train de le faire mais je me suis paumé en route, donc du complet, tant pis, ce sera encore un gros message de gentag...)

Commencer par faire ce que proposait coconimo dans un autre post, n'afficher la boxe que si dans une sous-catégorie, donc :
dans le fichier "\catalog\includes\column_left.php", juste avant ça :
Code
if ((USE_CACHE == 'true') && empty($SID)) {
    echo tep_cache_categories_box();
rajouter ça :
Code
if ($cPath != 0){
ensuite faut fermer ce if donc après ça :
Code
} else {
    include(DIR_WS_BOXES . 'categories.php');
  }
rajouter ça :
Code
}
-> plus de boxe sur l'acceuil

Ensuite dans le fichier "\catalog\includes\functions\general.php" rajouter ça n'importe où (entre des balises <?php et ?> tout de même et pas en plein milieu d'une autre fonction, hein mellow.gif ) :
Code
////
// Return a category image  
  function tep_get_category_image($id_cat = 0, $id_lang = 0) {
    if (($id_cat != 0) && ($id_lang != 0)) {
      $category_image_query = tep_db_query("select cd.categories_name, c.categories_image from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$id_cat . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$id_lang . "'");
      $category_image = tep_db_fetch_array($category_image_query);
      if (strlen($category_image['categories_image'])) {
        return (tep_image(DIR_WS_IMAGES . $category_image["categories_image"], $category_image["categories_name"], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT));
      } else {
        return ('');
      }
    } else {
      return ('');
    }
  }
Donc toujours la fonction de coconimo que j'ai retouchée un peu (bah oui on n'utilises pas de variables globales quand on fait du code "moderne" - c'est les "vieux" codeurs en C qui font ça, et encore... - on utilise le passage de paramètre, c'est beaucoup plus propre et surtout on peut passer ce qu'on veut, hein, imagine que tu ne veuilles pas qu'elle utilise la catégorie courante comme catégorie à tester mais une spécifique, tu peux lui passer là, c'est plus pratique quoi...)

Puis - et voilà le gros pâté... désolé - le code de la boxe catégorie modifié et complet (donc juste faire une copie de l'originale pour la garder et remplacer la totalité du code de l'originale par celui que je donnes ici...) :
Code
<?php
/*
  $Id: categories.php,v 1.25 2003/07/09 01:13:58 hpdl Exp $

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2003 osCommerce

  Released under the GNU General Public License
*/
  function tep_show_category($counter) {
    global $tree, $categories_string, $cPath_array;

    if ($tree[$counter]['parent'] == 0) {
      //$cPath_new = 'cPath=' . $counter;
    } else {
      for ($i=0; $i<$tree[$counter]['level']; $i++) {
        $categories_string .= "&nbsp;&nbsp;";
      }
      $categories_string .= '<a href="';
      $cPath_new = 'cPath=' . $tree[$counter]['path'];
      $categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">';
      if (isset($cPath_array) && in_array($counter, $cPath_array)) {
        $categories_string .= '<b>';
      }
      // display category name
      $categories_string .= $tree[$counter]['name'];

      if (isset($cPath_array) && in_array($counter, $cPath_array)) {
        $categories_string .= '</b>';
      }

      if (tep_has_category_subcategories($counter)) {
        $categories_string .= '-&gt;';
      }

      $categories_string .= '</a>';

      if (SHOW_COUNTS == 'true') {
        $products_in_category = tep_count_products_in_category($counter);
        if ($products_in_category > 0) {
          $categories_string .= '&nbsp;(' . $products_in_category . ')';
        }
      }

      $categories_string .= '<br />';
    }

    if ($tree[$counter]['next_id'] != false) {
      tep_show_category($tree[$counter]['next_id']);
    }
  }
?>
<!-- categories //-->
          <tr>
            <td>
<?php
if ($cPath != 0) {
  $arr = explode('_', $cPath);
  $main_cat = $arr[0];
  $cat_name_query = tep_db_query("select cd.categories_name from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . $main_cat . "' and cd.categories_id = c.categories_id and cd.language_id='" . (int)$languages_id ."'");
  $cat_name = tep_db_fetch_array($cat_name_query);
  if (strlen($cat_name['categories_name']) != 0) {
    $strg_cat_name = $cat_name['categories_name'];
  } else {
    $strg_cat_name = BOX_HEADING_CATEGORIES;
  }
}
  $info_box_contents = array();
  $info_box_contents[] = array('text' => $strg_cat_name);

  new infoBoxHeading($info_box_contents, true, false);

  $categories_string = '';
  $tree = array();

  $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '0' and c.categories_id = cd.categories_id and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name");
  while ($categories = tep_db_fetch_array($categories_query))  {
    $tree[$categories['categories_id']] = array('name' => $categories['categories_name'],
                                                'parent' => $categories['parent_id'],
                                                'level' => 0,
                                                'path' => $categories['categories_id'],
                                                'next_id' => false);

    if (isset($parent_id)) {
      $tree[$parent_id]['next_id'] = $categories['categories_id'];
    }

    $parent_id = $categories['categories_id'];

    if (!isset($first_element)) {
      $first_element = $categories['categories_id'];
    }
  }

  //------------------------
  if (tep_not_null($cPath)) {
    $new_path = '';
    reset($cPath_array);
    while (list($key, $value) = each($cPath_array)) {
      unset($parent_id);
      unset($first_id);
      $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$value . "' and c.categories_id = cd.categories_id and cd.language_id='" . (int)$languages_id ."' order by sort_order, cd.categories_name");
      if (tep_db_num_rows($categories_query)) {
        $new_path .= $value;
        while ($row = tep_db_fetch_array($categories_query)) {
          $tree[$row['categories_id']] = array('name' => $row['categories_name'],
                                               'parent' => $row['parent_id'],
                                               'level' => $key+1,
                                               'path' => $new_path . '_' . $row['categories_id'],
                                               'next_id' => false);

          if (isset($parent_id)) {
            $tree[$parent_id]['next_id'] = $row['categories_id'];
          }

          $parent_id = $row['categories_id'];

          if (!isset($first_id)) {
            $first_id = $row['categories_id'];
          }

          $last_id = $row['categories_id'];
        }
        $tree[$last_id]['next_id'] = $tree[$value]['next_id'];
        $tree[$value]['next_id'] = $first_id;
        $new_path .= '_';
      } else {
        break;
      }
    }
  }
  tep_show_category($first_element);

  $info_box_contents = array();
  $info_box_contents[] = array('text' => $categories_string);

  if ($current_category_id != 0 && $languages_id != 0) {
    $strg_to_display = tep_get_category_image((int)$current_category_id, (int)$languages_id);
    if (strlen($strg_to_display) != 0) {
      $info_box_contents[] = array('text' => $strg_to_display);
    }
  }  
  new infoBox($info_box_contents);
?>
            </td>
          </tr>
<!-- categories_eof //-->
Voilà, voilà... pas si compliqué en fait... tongue.gif

Ce message a été modifié par gentag - 15 Sep 2008, 17:02.


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 
cocomino
posté 15 Sep 2008, 17:52
Message #35


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1690
Inscrit : 10-October 06
Lieu : Rives du Lez
Membre no 12571



alors, mon 'tit gentag, je reste dubitative ... unsure.gif
j'attends les commentaires de shoprun et Delete (voir d'autres plus calés encore [mais ils se cachent en ce moment ... wink.gif ]), mon niveau 'chaton' en php ne me permet pas d'analyser ton code.
a + tard.



--------------------
"Pourquoi vois-tu la paille qui est dans l'oeil de ton frère et n'aperçois-tu pas la poutre qui est dans ton oeil ?".(Saint Luc, VI-41)
Go to the top of the page
 
shoprun
posté 15 Sep 2008, 19:47
Message #36


2eme dan OSC
Icône de groupe

Groupe : Membres VIP
Messages : 3712
Inscrit : 11-April 07
Lieu : Ile de la Réunion
Membre no 16487



Citation (coconimo @ 15 Sep 2008, 20:52) *
j'attends les commentaires de shoprun et Delete (voir d'autres plus calés encore [mais ils se cachent en ce moment ... wink.gif ]),
Disons que le dernier code que j'ai posté m'a semblé très proche de ce que tu souhaitais obtenir, mais j'ai pas vu de commentaires de ta parts, du coup j'ai quelque part "passer la main" aux autres.

C'est vrai j'avais dis que ce n'était pas totalement abouti car il manquait cette fichu image de la catégorie parente, mais mon code + ta fonction donne (à mon sens) le résultat final, du moins je pense.


Ceci dit, en lisant un peu tes explications, il y a des points un peu ombrageux, alors je vais donné le déroulement par rapport à ce que j'ai pu voir sur ton site démonstratif, car il y a une particularité que j'ai remarqué.
De plus je suis d'accord avec Delete de ce mettre d'accord sur le fonctionnement, ça va éviter de coder dans tous les sens.

1/ On a est dans la page d'accueil ou autre page, il y a rien, pas de box catégorie, normal.
Les catégories principales ou catégorie mères (celles dont le parent = 0) sont dans la page centrale.
On clique sur une des catégories.....

2/ On arrive dans la catégorie sélectionnée. On obtient l'ID de cette catégorie courante -> $current_category_id
-> on affiche l'image de la catégorie parente (ta fonction) de -> $current_category_id
-> on affiche les liens textuels des catégorie filles de -> $current_category_id

3/ -- etc --- idem que l'étape 2/ tant que la catégorie courante ($current_category_id) a des filles ...

4/ On arrive dans la catégorie sélectionnée, mais en bout de chaine, la dernière.
On obtient l'ID de cette catégorie courante -> $current_category_id
-> on affiche l'image de la catégorie parente (ta fonction) de -> $current_category_id
-> Et là on cette particularité, car normalement on devrait rien afficher car $current_category_id n'a plus de filles.
Mais j'ai vu que tu affichais des liens, et ces lien sont en faites les filles de la catégorie parentes (ou les soeurs de la catégorie courantes), les mêmes en faite que l'étape juste avant.
C'est ceci que l'on peut voir dans le code que j'avais proposé, en faisant une alternative :
Code
if (tep_has_category_subcategories($current_category_id)) {
// Requête 1
}
else {
// Requête 2
}



J'ai essayé le code de Gentag et il me semble que ce n'est pas ce qui doit être fait, ça affiche beaucoup trop de catégories que prévues. Enfin, toujours d'après ce que j'ai compris ...


Citation
Shoprun a été très clair : non.
Je dis pas que c'est impossible d'adapter le code d'origine de cette boxe, mais c'est la croix et la bannière.
Si c'est simple alors c'est que j'ai rien vu ni comment le faire.
Alors j'en reste à mon idée de faire du code spécifique pour le faire, et ça doit tenir sur 2 ou 3 requêtes max, juste celles dont on a besoin.
-> Le nom et l'image de la catégorie parente
-> Les filles de la catégorie courante
-> Et le test si la catégorie courant a des filles ou pas
Ce qui fait que je ne me replongerais pas encore dans le code de cette boxe qui pour ma part en fait beaucoup trop de ce que tu veux et en plus c'est même pas prévu pour.

Ce message a été modifié par shoprun - 15 Sep 2008, 20:07.


--------------------
Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet.
Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums
Prés-Requis -> Les compétences requises pour réussir avec osCommerce
Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US
Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer
Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla
Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com
Go to the top of the page
 
delete
posté 15 Sep 2008, 20:20
Message #37


2eme dan OSC
Icône de groupe

Groupe : Bannis
Messages : 3022
Inscrit : 12-November 07
Lieu : Massilia
Membre no 19718



Citation (coconimo @ 15 Sep 2008, 18:52) *
alors, mon 'tit gentag, je reste dubitative ... unsure.gif
j'attends les commentaires de shoprun et Delete (voir d'autres plus calés encore [mais ils se cachent en ce moment ... wink.gif ]), mon niveau 'chaton' en php ne me permet pas d'analyser ton code.
a + tard.


Hummm maurice, tu pousses le bouchon un peu trop loin ... mrgreen.gif

Les plus calés, notamment Gnidhal sont occupés ou ne répondent pas pour une bonne raison :

La finalité n'était pas claire dès le début d'où mon intervention dans ce post.

Evite de "Chatouiller" les efforts de chacun car l'investissement personnel de chaque intervenant a été certainement très chronophage.

Allez ! Une caresse pour le chaton wink.gif

Ce message a été modifié par delete - 15 Sep 2008, 20:20.
Go to the top of the page
 
cocomino
posté 15 Sep 2008, 21:15
Message #38


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1690
Inscrit : 10-October 06
Lieu : Rives du Lez
Membre no 12571



oula, je ne veux chatouiller personne.
je vais synthétiser les diverses réponses.
donc merci à vous 3 pour l'ensemble de vos efforts smile.gif smile.gif smile.gif


--------------------
"Pourquoi vois-tu la paille qui est dans l'oeil de ton frère et n'aperçois-tu pas la poutre qui est dans ton oeil ?".(Saint Luc, VI-41)
Go to the top of the page
 
NoZic
posté 15 Sep 2008, 22:20
Message #39


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Re,

sinon je pense toujours comme shoprun que c'est très "gourmand" comme solution pour pas vraiment la bonne utilisation (la création du tree veux-je dire...) et perso je trouvais son code très propre, vite fait et bien fait... mais je ne l'ai pas testé... ça semblait fonctionnel à lire quoi.

Mais vu que la boxe est mise en cache, c'est pas trop génant, c'est pour ça que j'ai fini le machin, c'était lancé j'avais tout sous la main en fait (dans mes onglets Notepad++) sinon j'aurais pris le code de shoprun si il n'y avait pas cette possibilité (d'ailleurs fallait juste finir pour l'image et mettre en cache pour en faire le truc "parfait")...

Bon du coup, faut l'activer... (EDIT: le cache hein)

EDIT2:
Citation
J'ai essayé le code de Gentag et il me semble que ce n'est pas ce qui doit être fait, ça affiche beaucoup trop de catégories que prévues. Enfin, toujours d'après ce que j'ai compris ...
il me semble que coconimo voulait le tree intégral de la categorie principale sélectionnée (parce qu'elle affiche les principales en horizontal dans le header ) donc le tree est respecté et il passe bien en gras tout ce qui l'est d'habitude, enfin si me souviens bien (pas trop en fait) de ce que j'ai fait aujourd'hui...

Ce message a été modifié par gentag - 15 Sep 2008, 22:38.


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 
shoprun
posté 16 Sep 2008, 06:06
Message #40


2eme dan OSC
Icône de groupe

Groupe : Membres VIP
Messages : 3712
Inscrit : 11-April 07
Lieu : Ile de la Réunion
Membre no 16487



Citation
je vais synthétiser les diverses réponses.
Synthétiser peut être, mais surtout décrire ton besoin de la manière la plus précise possible.
Les explications données plus haut restent encore floues, pour m'a part il y a encore ambiguïté.
Enfin, c'est mon avis ...


Citation (gentag @ 16 Sep 2008, 01:20) *
il me semble que coconimo voulait le tree intégral de la categorie principale sélectionnée (parce qu'elle affiche les principales en horizontal dans le header )
@Gentag
On ne comprend pas la même chose, on en fait des déductions personnelles, en faite.
Tu dis qu'il faut un $tree complet parce qu'il y a les catégories mères dans le header.
Et bien moi je pense qu'il y a pas lieu d'avoir un $tree complet justement parce que le header contient déjà les catégories mères.

Bref, sans retour de Coconimo, on va sans cesse faire de "l'approximatif".

Ce message a été modifié par shoprun - 16 Sep 2008, 06:09.


--------------------
Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet.
Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums
Prés-Requis -> Les compétences requises pour réussir avec osCommerce
Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US
Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer
Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla
Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com
Go to the top of the page
 
NoZic
posté 16 Sep 2008, 06:35
Message #41


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Salut shoprun,

en fait, je (pen)sais (savoir... huh.gif ) exactement ce que voulais coconimo parce que je suis le débat dès le départ, sur le post de padaben cité plus haut, car tout part de là...

En fait mettre le tree "en entier" de la catégorie principale est important car sinon il ne reste que la breadcrumb poour retrouver les sous-catégories quand on est dans une sous-sous-catégorie, la navigation devient très chiante si la catégorie dans laquelle on rentre devient la "principale" des catégories affichées dans la boxe (j'ai essayé, j'étatis parti sur un truc comme ça au départ...)


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 
shoprun
posté 16 Sep 2008, 07:22
Message #42


2eme dan OSC
Icône de groupe

Groupe : Membres VIP
Messages : 3712
Inscrit : 11-April 07
Lieu : Ile de la Réunion
Membre no 16487



@Gentag
Je viens de constater ceci dans le titre -> -| sujet clos |-
Etonnant, mais bon ... huh.gif

Alors j'en fais plus état, le débat est clos.

Ce message a été modifié par shoprun - 16 Sep 2008, 07:22.


--------------------
Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet.
Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums
Prés-Requis -> Les compétences requises pour réussir avec osCommerce
Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US
Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer
Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla
Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com
Go to the top of the page
 
cocomino
posté 16 Sep 2008, 08:00
Message #43


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1690
Inscrit : 10-October 06
Lieu : Rives du Lez
Membre no 12571



Citation (coconimo @ 15 Sep 2008, 12:05) *
oki les garçons.
voici le scénario :
on a dans le header un menu avec les catégories mère [parent_id =0] (actuellement sur mon site, c'est le module main_categories qui permet d'y accéder, mais qu'importe)
ensuite la boxe catégories apparaît suivant les conditions suivantes :
cas 1 : je cliques sur le menu : la catégorie mère n'a pas de ss categories, juste des produits -> la boxe categories n'apparaît pas, c'est inutile, l'arborescence serait vide : donc on a l'affichage direct du listing produit.
cat 2 : je cliques sur le menu : la catégorie mère a des ss catégories -> la boxe catégories apparaît avec l'image de la catégorie mère. je cliques sur une ss catégories -> l'image de la sous catégorie vient remplacer celle de la catégorie mère. etc, etc ...
l'arbre continu de se déployer si j'ai des sous sous catégories au fur et à mesure (fonctionnement normal de la boxe catégories originale)
cas 3 : je suis sur la page product_info : la boxe catégories apparaît en fonction des cas 1 et 2.
en résumé, avec mon code, la boxe catégories n'apparaît que dans 3 cas.
si vous êtes sur la page product_new.php, product_review.php, etc , la boxe n'a pas lieu d'apparaître puisque le chemin n'est pas définit.(multi-produits et multi-catégorie)

.../...



Citation (shoprun @ 16 Sep 2008, 08:06) *
Citation
je vais synthétiser les diverses réponses.
Synthétiser peut être, mais surtout décrire ton besoin de la manière la plus précise possible.
Les explications données plus haut restent encore floues, pour m'a part il y a encore ambiguïté.
Enfin, c'est mon avis ...


Citation (gentag @ 16 Sep 2008, 01:20) *
il me semble que coconimo voulait le tree intégral de la categorie principale sélectionnée (parce qu'elle affiche les principales en horizontal dans le header )
@Gentag
On ne comprend pas la même chose, on en fait des déductions personnelles, en faite.
Tu dis qu'il faut un $tree complet parce qu'il y a les catégories mères dans le header.
Et bien moi je pense qu'il y a pas lieu d'avoir un $tree complet justement parce que le header contient déjà les catégories mères.

Bref, sans retour de Coconimo, on va sans cesse faire de "l'approximatif".



Citation (gentag @ 16 Sep 2008, 08:35) *
Salut shoprun,

en fait, je (pen)sais (savoir... huh.gif ) exactement ce que voulais coconimo parce que je suis le débat dès le départ, sur le post de padaben cité plus haut, car tout part de là...

En fait mettre le tree "en entier" de la catégorie principale est important car sinon il ne reste que la breadcrumb poour retrouver les sous-catégories quand on est dans une sous-sous-catégorie, la navigation devient très chiante si la catégorie dans laquelle on rentre devient la "principale" des catégories affichées dans la boxe (j'ai essayé, j'étatis parti sur un truc comme ça au départ...)


Désolé, je pensais que mes explications avaient été claires . Sachant que dès le départ, le résultat 'physique' de mon code été opérationnel sur le site de démo, car les conditionnelles et la fonction remplissaient bien leur tâche.(couplé avec le module main_categories + le module categories_tab de Delete dans le hearder)
C'est pour cette raison que je ne souhaitais pas forcément totalement modifier le code de la boxe pour garder la construction de l'arbre.
Néanmoins, les codes que vous avez eu la gentillesse de poster vont me servir à décortiquer l'indispensable et l'inutile de cette boxe pour arriver au but final (qui peut paraître bizarre car non réalisé encore en boutique ... c'est du visuel, mais ça doit rester ergonomique en même temps)
pour finir, j'ai mis le sujet clos parce que je ne souhaite pas non plus abusé du temps de chacun, mais travaillé sur les pistes données. wink.gif
merci pour tout. wub.gif


--------------------
"Pourquoi vois-tu la paille qui est dans l'oeil de ton frère et n'aperçois-tu pas la poutre qui est dans ton oeil ?".(Saint Luc, VI-41)
Go to the top of the page
 
shoprun
posté 16 Sep 2008, 10:44
Message #44


2eme dan OSC
Icône de groupe

Groupe : Membres VIP
Messages : 3712
Inscrit : 11-April 07
Lieu : Ile de la Réunion
Membre no 16487



Citation
l'arbre continu de se déployer si j'ai des sous sous catégories au fur et à mesure (fonctionnement normal de la boxe catégories originale)

Et bien c'est là le problème.
Cette info me parait contradictoire par rapport à ce que je vois dans la boxe catégories sur ton site "démo".
En visuel je ne vois pas l'arbre ce déployer, mais je vois uniquement les catégories filles, et uniquement celles liées directement, je ne vois donc pas les petites filles (ss cat), et encore moins les autres catégories mères et leur filles, petites filles, etc ...

--> Quand on sélectionne "Computeur", il y a "Laptop" et "Mac" comme catégories fille, et l'image de la catégorie parente "Computeur". (je ne vois pas autre chose).

--> Quand on sélectionne Laptop" (c'est la dernière, on est en bout de chaine), il y a à nouveau "Laptop" et "Mac", et l'image de la catégorie parente "Laptop" (qui est la même d'ailleurs).
Ici, ce n'est pas un comportement normal, car le catégorie "Laptop" n'a pas de fille, donc normalement il devrait rien avoir dans cette box catégorie sinon que l'image de "Laptop".
Mais dans le fond c'est pas plus mal ainsi, mais je note cette spécificité ...


Sérieux, j'ai surement raté une étape, mais c'est pas grâve, il y a pas mort d'homme blush.gif
De plus, mon aide a toujours été qu'une aide, et non pas vouloir proposer une solution clé en main.

Ce message a été modifié par shoprun - 16 Sep 2008, 10:44.


--------------------
Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet.
Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums
Prés-Requis -> Les compétences requises pour réussir avec osCommerce
Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US
Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer
Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla
Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com
Go to the top of the page
 
cocomino
posté 16 Sep 2008, 12:03
Message #45


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1690
Inscrit : 10-October 06
Lieu : Rives du Lez
Membre no 12571



bon, toutes mes categories n'ont pas forcément des ss ss catégories.
mais c le cas de "software".
sinon, oui la boxe reste présente tant qu'on navigue dans la même categorie principale, faut garder un tant soit peu de l'ergonomie, non?


--------------------
"Pourquoi vois-tu la paille qui est dans l'oeil de ton frère et n'aperçois-tu pas la poutre qui est dans ton oeil ?".(Saint Luc, VI-41)
Go to the top of the page
 
shoprun
posté 16 Sep 2008, 15:50
Message #46


2eme dan OSC
Icône de groupe

Groupe : Membres VIP
Messages : 3712
Inscrit : 11-April 07
Lieu : Ile de la Réunion
Membre no 16487



Citation (coconimo @ 16 Sep 2008, 15:03) *
bon, toutes mes categories n'ont pas forcément des ss ss catégories.
mais c le cas de "software".

Ben j'ai essayé pas de catégories, mais pas celle ci, et là, les choses sont un peu plus clair.

-> Je note maintenant que le déploiement ce fait effectivement au fur et à mesure que l'on avance dans l'arbre de la catégorie de départ, elles sont présentes/conservées sous forme de liens, ce qui permet de remonter plus facilement.
(Je n'avais pas du tout remarqué ça, du coup mon code ne représente pas ça, donc pas bon).

-> Petite particularité tout de même.
La catégorie mère (parente = 0) n'est pas présente sous forme de lien textuel, mais uniquement sous forme de lien "image" quand on arrive dans celle ci de la page d'accueil. (ou que l'on clique sur le lien présent dans la barre de navigation).
Mais c'est dû au fait qu'il est prévu que les catégories mères soient dans le header il me semble.

-> L'autre particularité, c'est la même que j'avais noté plus haut, c'est quand on arrive en bout de chaine, dans une catégorie n'ayant plus de filles.


En ce qui concerne l'ergonomie, effectivement c'est bien mieux ainsi

Ce message a été modifié par shoprun - 16 Sep 2008, 15:55.


--------------------
Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet.
Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums
Prés-Requis -> Les compétences requises pour réussir avec osCommerce
Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US
Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer
Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla
Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com
Go to the top of the page
 
cocomino
posté 16 Sep 2008, 21:57
Message #47


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1690
Inscrit : 10-October 06
Lieu : Rives du Lez
Membre no 12571



bon, quoi qu'il en soit, faudra que je revois ma copie car en définissant error_reporting(E_ALL | E_STRICT);, j'ai une belle :
Notice: Undefined offset: 10 in C:\wamp\www\catalog\includes\boxes\categories.php on line 132
(10 étant l'id de la catégorie mère appelée et $first_id = $row['categories_id']; la ligne posant problème.)
ça n'empêche pas le script de fonctionner, mais c pas terrible quand même d'un point de vue développement.


--------------------
"Pourquoi vois-tu la paille qui est dans l'oeil de ton frère et n'aperçois-tu pas la poutre qui est dans ton oeil ?".(Saint Luc, VI-41)
Go to the top of the page
 
NoZic
posté 16 Sep 2008, 22:23
Message #48


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Bonsoir,

euh... tu as eu ça sur mon code ?
Citation
mais c pas terrible quand même d'un point de vue développement
pire...
C'est vrai que quand je teste je suis sur une OsC vierge donc avec la vilaine ligne dans application.top qui met ça en plus permissif donc a pas pû la voir...

Ce message a été modifié par gentag - 16 Sep 2008, 22:24.


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 
shoprun
posté 17 Sep 2008, 06:33
Message #49


2eme dan OSC
Icône de groupe

Groupe : Membres VIP
Messages : 3712
Inscrit : 11-April 07
Lieu : Ile de la Réunion
Membre no 16487



Bon, et bien j'en conviens qu'il est préférable ou plus simple de conserver le code d'origine
J'ai donc repris le code de Gentag qui répond finalement bien au besoin exprimé, j'avais pas compris tout ça, c'est clair mrgreen.gif
Scouzy Gentag wink.gif

Du coup, j'en reviens à mon idée de départ, au tout début, qu'il doit être possible d'éviter de requêter afin de récupérer l'image de la catégorie.
L'idée était de rajouter dans les requêtes le nom du champ, bref, on avait déjà vu ça ...

Donc voilà le code (celui de Gentag) avec quelques tout petits aménagements, dont la fonction tep_get_category_image() devient inutile (c'est le but ici).
Ajout de la variable global -> $cat_image
Code
$cat_image = null;
function tep_show_category($counter) {
    global $tree, $categories_string, $cPath_array, $cat_image;
    
    if ((int)$tree[$counter]['parent'] > 0) {
        for ($i=0; $i<$tree[$counter]['level']; $i++) {
            $categories_string .= "&nbsp;&nbsp;";
        }
        $categories_string .= '<a href="';
        $cPath_new = 'cPath=' . $tree[$counter]['path'];
        $categories_string .= tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">';
        if (isset($cPath_array) && in_array($counter, $cPath_array)) {
            //
            $cat_image = '<a href="'.tep_href_link(FILENAME_DEFAULT, $cPath_new).'">'.tep_image(DIR_WS_IMAGES.$tree[$counter]['image'], $tree[$counter]['name']).'</a>';
            //
            $categories_string .= '<b>';
        }
        // display category name
        $categories_string .= $tree[$counter]['name'];
        
        if (isset($cPath_array) && in_array($counter, $cPath_array)) {
            $categories_string .= '</b>';
        }
        
        if (tep_has_category_subcategories($counter)) {
            $categories_string .= '-&gt;';
        }
        
        $categories_string .= '</a>';
        
        if (SHOW_COUNTS == 'true') {
            $products_in_category = tep_count_products_in_category($counter);
            if ($products_in_category > 0) {
                $categories_string .= '&nbsp;(' . $products_in_category . ')';
            }
        }
        
        $categories_string .= '<br />';
    }
    
    
    if ($tree[$counter]['next_id'] != false) {
    tep_show_category($tree[$counter]['next_id']);
    }
}

Puis :
Code
if ($cPath != 0) {
    $arr = explode('_', $cPath);
    $main_cat = $arr[0];
    $cat_name_query = tep_db_query("select c.categories_id , c.categories_image, cd.categories_name  from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . $main_cat . "' and cd.categories_id = c.categories_id and cd.language_id='" . (int)$languages_id ."'");
    if (tep_db_num_rows($cat_name_query) > 0) {
        $cat_name = tep_db_fetch_array($cat_name_query);
        $strg_cat_name = $cat_name['categories_name'];
        $cat_image = '<a href="'.tep_href_link(FILENAME_DEFAULT, 'cPath='.$cat_name['categories_id']).'">'.tep_image(DIR_WS_IMAGES.$cat_name['categories_image'], $cat_name['categories_name']).'</a>';
    }
    else {
        $strg_cat_name = BOX_HEADING_CATEGORIES;
    }
}
$info_box_contents = array();
$info_box_contents[] = array('text' => $strg_cat_name);
new infoBoxHeading($info_box_contents, true, false);

Puis :
Code
tep_show_category($first_element);

$info_box_contents = array();
$info_box_contents[] = array('text' => $categories_string);

if (tep_not_null($cat_image)) {
    $info_box_contents[] = array('text' => $cat_image);
}
new infoBox($info_box_contents);


Et enfin, ne pas oublier le nom de l'image + ajout dans le tableau pour les 2 requêtes :
Code
// Dans la 1ère pour le tableau :
'image' => $categories['categories_image'],
// Dans la 2ème pour le tableau :
'image' => $row['categories_image'],



Citation (coconimo @ 17 Sep 2008, 00:57) *
Notice: Undefined offset: 10 in C:\wamp\www\catalog\includes\boxes\categories.php on line 132

Je n'est pas du cette erreur avec un E-ALL | E_STRICT, du coup difficile de voir le problème.
Puis je reste tout même surpris du type d'erreur retourné car avant de faire le -> $first_id = $row['categories_id']; il y a le -> $tree[$row['categories_id']] = array(......), donc le tableau est initialisé. Pige pas.

Fait un echo sur $row['categories_id'] et $tree[$row['categories_id']]['name'] juste après la création de ce tableau, ne serait ce pour voir ce que ça contient.
Peut être que ta BDD te retourne un enregistrement null ou vide.
Peut être est dû aux copies de produits dans une ou plusieurs catégories.

Bref, vu que je n'est pas cette erreur, ça doit venir d'une particularité chez toi, et ça viendrait peut être de la BDD, du moins je pense.

Ce message a été modifié par shoprun - 17 Sep 2008, 06:47.


--------------------
Nous ne sommes pas un Service Après-Vente ni une Hot-Line !!!, et pas de "UP" et de doublon svp ...
Prenez le temps de lire les informations mises à votre dispositions avant de créer un sujet.
Démarrer du bon pied -> Bien utiliser les forums | Bien poser sa question | Règles d'usage des forums
Prés-Requis -> Les compétences requises pour réussir avec osCommerce
Docs / Infos -> LA FAQ | Rechercher | Contributions | Contribution US
Sujets épinglés -> Manuel d'utilisation MS2 | Structure OsC2.2 MS2 | ms2-fr-rc1-w3c | SSL : une obligation? | Design de la MS2 | Tutoriels CSS | Optimisez les performances de votre boutique | Taux de TVA à appliquer
Utile -> WampServer | EasyPhp | Xampp | Mamp - Ftp -> FileZilla
Apprendre -> siteduzero | alsacreations | apprendre-php | developpez.com
Go to the top of the page
 
NoZic
posté 17 Sep 2008, 06:48
Message #50


Ceinture noire OSC
Icône de groupe

Groupe : Membres
Messages : 2872
Inscrit : 27-June 07
Lieu : Elancourt (78)
Membre no 18127



Bonjour,

Citation
Scouzy Gentag
Bah ecoute aucun problème hein, je ne me suis pas senti agressé ni rien, tout le monde fait son interprétation, juste que j'étais le mieux placé pour comprendre (bon à part coconimo) j'ai presque vu germer l'idée dans sa tête sur le post de padaben... (bonne idée au passage, c'est pour ça que j'ai participé dans ma modeste mesure)

Sinon l'erreur avec mon code n'est pas impossible car comme je zappe toute la partie de la construction des catégories principales et qu'il reste une ligne commentée pour dire de passer à une principale suivante (à ne pas décommenter, voilà le bordel sinon...), je ne suis pas (trop) étonné que cela pose un problème sur une catégorie principale en fait... juste que je ne pouvais pas la voir avec la boutique par défaut. Mais du coup je me demande si la construction du tree (hormis l'erreur) ne serait pas "parfaite", soit, qu'il ne liste que la catégorie principale de la catégorie en cours et pas toutes les catégorie comme le fait celui d'origine (j'ai pas vérifié mais je pense que c'est le cas, ce qui ferait que mon truc ne serais pas mal en fait, mais faut vérifier...)


--------------------
"Les solutions existent toujours depuis longtemps, il suffit de les trouver."
Go to the top of the page
 

4 Pages V  < 1 2 3 4 >
Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



RSS Version bas débit Nous sommes le : 28th March 2024 - 10:38
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)