Jump to content

Catégorie et sous catégorie dans des combo box


Recommended Posts

Bonjour,

 

je cherche à lister les catégorie dans mon site dans une liste déroulante (combobox) et selon la catégorie choisie un deuxième  combobox sera remplir par les sous catégorie.

j'ai commence à développer cette idée  mais je suis bloqué au niveau de 2 ème combobox (comment se faire la liaison entre les deux ?!)

voila mon travail :

fichier TPL:

{capture name=path}{l s='Recherche'}{/capture}
{include file="$tpl_dir./breadcrumb.tpl"}
<h1>{l s='Recherche'}</h1>
<div class = "rte">
<form action="notice.php" method="post">
<p>   Bienvenue dans votre centre de t&eacutel&egravechargement, vous y trouverez ...  </p>
<p><input type="submit" id="SubmitValider" name="SubmitValider" class="button_large" value="Valider"></p>

<!--  depuis base de données --> 
<select onChange=" " name="id">
    <option value="Select">Select</option> 
     {foreach from=$categories item=categorie}
         <option value="id{$categorie.id_category}">{$categorie.name}</option>
     {/foreach}
</select>

</form>
</div>

fichier Controller.php:

<?php
class NoticeControllerCore extends FrontController
{
    public $php_self = 'notice';
    public function postProcess()
    {
      
    }
    public function process()
    {
        
    }

  public function setMedia()
  {
  parent::setMedia();
  $this->addCSS(_THEME_CSS_DIR_.'notice.css');
  $this->addJS(_THEME_JS_DIR_.'notice.js');
  }

  public function initContent()
  {
	 parent::initContent();
	 $categories = Db::getInstance()->ExecuteS('
         SELECT * 
	 FROM Table
	 where champs');
         $this->context->smarty->assign('categories',$categories);
         
         /*$souscategories = Db::getInstance()->ExecuteS('
	 SELECT * 
	 FROM table
	 where condition sur ID selectionné');
         $this->context->smarty->assign('souscategories',$souscategories);*/
	 
     $this->setTemplate(_PS_THEME_DIR_.'notice.tpl');
  }
  public function displayContent()
    {
        parent::displayContent();
        self::$smarty->display(_PS_THEME_DIR_.'notice.tpl');
	}
  
}

?>

j'ai essayé avec getXMLHttp()  dans le fichier JS mais j'ai d'erreur 

There are a problem while using xmlhttp 
1)not found 
2)Internal server error

Merci de me guider à développer cette idée ... 

Link to comment
Share on other sites

pour ce moment, le 2 éme combobox fonctionne mais seulment en cliquant sur le botton , 

car je utilise :(fichier TPL)

{if $smarty.post.id}selected = "selected"{/if}>

et au niveau de controller.php:

if($id=Tools::getValue('id')){
$souscategories = Db::getInstance()->ExecuteS(
SELECT * 
FROM table
where  champs = '.$id.' and ');
$this->context->smarty->assign('souscategories',$souscategories);
}

pffff je suis bloqué a ce state depuis une semais  ,

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...