Probleme d'affichage d'une Select List

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Probleme d'affichage d'une Select List

    Je développe un composant sous JOOMLA 1.7 et je rencontre un problème pour afficher une Select List des que je passe par un fichier ELEMENT car je dois récupérer des données dans une table avec une sélection apportée par une paramètre défini pour la vue en frontend ( choix d'une section).

    J'ai créé un fichier site/models/forms/renewsection.php

    <form name="renewsection">
    <fieldset
    addfieldpath="/administrator/components/com_clubsportif/elements" >

    <field
    name="renewsection"
    type="renewsection"
    default=""
    label="Nom"
    description="Nom des membres "
    >
    </field>

    <field
    name="renew"
    type="checkbox"
    description="Renew option"
    label="Renouvellement"
    value = "Oui"
    required="false"
    size="50"
    />

    </fieldset>
    </form>


    J'ai placé la requete sql dans un fichier renewsection.php dans un folder elements
    Dans administrator/components/com_component/elements/renewsection.php

    <?php
    defined('_JEXEC') or jexit('Restricted access');
    jimport("joomla.html.parameter.element");

    class JElementRenewsection extends JElement
    {
    var $_name = 'renewsection';
    function fetchElement($name, $values, &$node, $control_name)
    {
    $section = JRequest::getvar('section');

    $db = JFactory::getDBO();
    $query = $db->getQuery(true);
    $query = "
    SELECT ".$db->nameQuote('id').", concat( lastname, ' ', firstname) AS nom
    FROM ".$db->nameQuote('#__comprofiler')."
    WHERE ".$db->nameQuote('cb_sport1previous')." = ".$db->quote($section).";
    ";
    $db->setQuery($query);
    $results = $db->loadObjectList();
    foreach ( $results as $result)
    {
    $options[] = JHTML::_('select.option', $result->id, $result->nom );
    }

    return JHTML::_('select.genericlist', $options, ''.$control_name.'['.$name.']', 'size="10" class="inputbox"', 'value', 'text', $values, $control_name.$name);
    }
    }
    ?>

    La vue en frontend est définie dans site/views/renewsection/html/default.php
    <?php
    // No direct access to this file
    defined('_JEXEC') or die('Restricted access');
    JHtml::_('behavior.keepalive');
    JHtml::_('behavior.formvalidation');
    JHtml::_('behavior.tooltip');

    $section = JRequest::getvar('section');

    ?>
    <h2>Renouvellement des membres de la section <?php echo $section; ?> </h2>

    <form action="<?php echo JRoute::_('index.php'); ?>" method="post" id="renewsection" name="renewsection">

    <input type="hidden" name="option" value="com_clubsportif" />
    <input type="hidden" name="task" value="renewsection.submit" />
    <button type="submit" class="button"><?php echo JText::_('Submit'); ?></button>
    <?php echo JHtml::_('form.token'); ?>
    <fieldset>
    <table class="contentpane">
    <tr class="sectiontableentry2 cbft_select">
    <td class="titleCell"><?php echo $this->form->getLabel('id'); ?></td>
    <td class="titleCell"><?php echo $this->form->getInput('id'); ?></td>
    </tr>
    <tr class="sectiontableentry1 cbft_text">
    <td class="titleCell"><?php echo $this->form->getLabel('renew'); ?></td>
    <td class="titleCell"><?php echo $this->form->getInput('renew'); ?></td>
    </tr>
    </table>
    </fieldset>

    Le parametre pour la vue est défini dans site/views/renewsection/html/default.xml
    <?xml version="1.0" encoding="utf-8"?>
    <metadata>
    <layout title="Renouvellement membres d'une section">
    <message>Renouvellement des membres d'une section</message>
    </layout>
    <fields
    name="request"
    addfieldpath="/administrator/components/com_clubsportif/models/fields"
    >
    <fieldset name="request">
    <field
    name="section"
    type="sql"
    label="Choisir une section"
    description="Choisir une section"
    default = ""
    query = "SELECT id, section FROM #__cs_sections "
    key_field = "section"
    />
    </fieldset>
    </fields>
    </metadata>

    Je n'ai aucune erreur qui s'affiche cependant le champ Nom ne s'affiche pas en frontend .

    J'ai testé la query dans comprofiler , elle renvoie bien un tableau ave l'id et le champ nom (contaténation de lastname et firstname).

    J'ai bon revoir le code sous tous les angles je ne comprends pas ce qui est erroné.
    merci de votre aide.

  • #2
    Re : Probleme d'affichage d'une Select List

    Bonjour,
    je suis complétement bloqué si je n'arrive pas à régler ce problème. Est-ce que quelqu'un peut regarder ou je fais une erreur , je pense qu'il s'agit d'un paramètre erroné mais lequel?
    Merci de votre aide.

    Commentaire


    • #3
      Re : Probleme d'affichage d'une Select List

      Je suis interessé par un exemple de développement de liste de choix (Drop down list) populée par une requete SQL utilisant un parametre de la vue, ce qui nécessite de créer une requete dans un fichier placé dans un folder admin/components/my_component/elements sous Joomla 1.7.

      J'ai essayé tous les exemples trouvés en 1.5 mais je n'arrive pas à afficher le résultat de la requete dans le liste sur le formulaire en frontend.

      Votre aide sera très appréciée car je tourne en rond depuis plusieurs jours.

      Commentaire

      Annonce

      Réduire
      Aucune annonce pour le moment.

      Partenaire de l'association

      Réduire

      Hébergeur Web PlanetHoster
      Travaille ...
      X