CTL Module Maker : requête d'un autre site

Support en français pour CMS Made Simple.

Moderator: jce76350

Post Reply
User avatar
will83
Forum Members
Forum Members
Posts: 88
Joined: Sat Aug 02, 2008 6:23 pm

CTL Module Maker : requête d'un autre site

Post by will83 »

Bonjour tout le monde,

Je suis face à une galère un peu inhabituelle.
J'utilise sur un site le module CTL Module Maker.
J'ai un champ dans ce module défini à "Liste d'options prédéfinies" que je voudrai rendre dynamique.
Ceux qui connaissent bien CTL me diront qu'il existe une option spéciale pour ça. Malgré tout elle ne me donne pas satisfaction car je voudrai que cette liste soit vraiment dynamique.
En fait, ma base de donnée supporte deux sites distincts (qui ont des interactions l'un avec l'autre) : j'insiste, c'est la même base de données, donc réalisable, avec du code un peu dur.

J'aimerai pouvoir modifier le module généré pour réaliser une requête sql qui me permette de récupérer de la donnée sur l'autre site (une liste de produits, notamment les ID et les libellés).

J'ai trouvé le bout de code à modifier dans le module généré :

Code: Select all

function get_predefinedoptions($field,$retrieve=false){
		// return the options for a predefined list
		if($retrieve){
			switch($field){
				case "mon_select":
					return array("0"=>$this->Lang("mon_select_option_0"), "1"=>$this->Lang("mon_select_option_1"));
					break;
			}
		}else{
			switch($field){
				case "mon_select":
					return array($this->Lang("mon_select_option_0")=>"0", $this->Lang("mon_select_option_1")=>"1");
					break;
			}
		}
	}
    return $options;
}
Comment dès lors, effectuer ma requête pour afficher dans le select la chose suivante :
--> Un label qui correspond au champ X de ma table (le libellé du produit)
--> Une value qui correspond au champ Y de ma table (l'id du produit)

En sortie j'aurai donc un truc du style :

Code: Select all

<option value="id_produit_0">label_produit_0</option>
<option value="id_produit_1">label_produit_1</option>
<option value="id_produit_n">label_produit_n</option>
J'ai déjà la requête sql, mais je n'ai aucune idée de la manière dont je dois l'utiliser dans le code ci-dessus :

Code: Select all

$query = "SELECT id,name FROM site2_produits ORDER BY id";
Merci pour votre éclairage!
Last edited by will83 on Tue Jul 27, 2010 11:24 pm, edited 1 time in total.
Post Reply

Return to “French - Français”