Forum CMS Made Simple FR

Version complète : [Résolu] Warning: Parameter formulaire
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.

p.ricci

Bonjour,

Je suis en train de développer un nouveau module avec un formulaire
J'obtiens les message suivant et aucun champ n'est accessible :

Warning: Parameter userid is not known by module Lot dropped in /Applications/MAMP/htdocs/test/cmstest/lib/misc.functions.php on line 1418

Warning: Parameter lotnumber0 is not known by module Lot dropped in /Applications/MAMP/htdocs/test/cmstest/lib/misc.functions.php on line 1418

Warning: Parameter lotnumber1 is not known by module Lot dropped in /Applications/MAMP/htdocs/test/cmstest/lib/misc.functions.php on line 1418

Warning: Parameter lotnumber2 is not known by module Lot dropped in /Applications/MAMP/htdocs/test/cmstest/lib/misc.functions.php on line 1418

Voici le code pour créer les tag pour le formulaire
Code :
$moduleid=$id;
//$this->smarty->assign('startform', $this->CreateFrontendFormStart($moduleid,$returnid,'addlot','post') );
$this->smarty->assign( 'startform' , $this->CGCreateFormStart($moduleid,addlot,$returnid));
$this->smarty->assign('endform' , $this->CreateFormEnd() );
$feu = $this->getFeuInstance();
if (!isset($feu)) exit;

if( $feu->LoggedInId() )
{

    if($this->checkPermission($feu->LoggedInId(), 'gestionnaire'))
    {
                    //get list of user in medecin
                    $groupid = $feu->GetGroupID('medecin');
                    
                    $users_opt= array();
                    $users = $feu->GetFullUsersInGroup($groupid) ;
                        
                    
                    foreach($users as $oneuser )
                    {
                        //print_r($oneuser);
                        
                        //$i=count($userList);
                        
                        $data= array('id'=>$oneuser['id'],
                                                'username'=>$oneuser['username'],
                                                'password'=>$oneuser['password'],
                                                'createdate'=>$oneuser['createdate'],
                                                'expires'=>$oneuser['expires']
                                                
                                                );
                    
                         for($j=0;$j<count($oneuser['props']);$j++)
                         {
                            //echo $oneuser['props'][$j]['title'].'---'.$oneuser['props'][$j]['data'].'<br />';
                            $data[$oneuser['props'][$j]['title']]= $oneuser['props'][$j]['data'];
                         }
                        
                        // $users_opt[$data['id']]=$data['nom'].' '.$data['prenom'];
                         $users_opt[$data['nom'].' '.$data['prenom']] = $data['id'];
                        // unset($data);
                    }
                    
                    
                    
                    
                    $this->smarty->assign( 'users' ,  $this->CreateInputDropdown($moduleid, 'userid',$users_opt ) ) ;
                    
                    $this->smarty->assign('lblInvestigateur' , $this->Lang('lblInvestigateur') );
                    
                    $cptBlockLot = $this->GetPreference('lot_assign');
                    
                    $blockLot = array();
                    for( $i=0 ; $i < $cptBlockLot ; $i++ )
                    {
                        $blockLot[$i]['label']= $this->Lang('lblLot');
                        $blockLot[$i]['input']= $this->CreateInputText( $moduleid, 'lotnumber'.$i);
                    }
                    $this->smarty->assign('inputtest' , $this->CreateInputText($moduleid, 'usr' ) );
                    $this->smarty->assign('list' , $blockLot );
                    $this->smarty->assign( 'submit' , $this->createInputSubmit($moduleid, 'submit' ,  $this->Lang('lblSubmit') )  );
                    $this->smarty->assign( 'reset' ,  $this->CreateInputReset( $moduleid,'reset', $this->Lang('lblReset') )   );
                
                    
                    
                    echo $this->ProcessTemplate('formaddlot.tpl');
    }
    else
    {
        echo $this->Lang('Error_notAccess');
    }
}
else
{
    echo $this->Lang('Error_notLogin');
}
Voici pour le template

Code :
{$startform}

<table>

<tr><td>{$lblInvestigateur}</td><td>{$users}</td></tr>


{section name=element loop=$list}
        <tr>
            
            <td>
                {$list[element].label}
            </td>
          
           <td>
                   {$list[element].input}
           </td>
          
        </tr>
     {/section}

</table>
{$inputtest}
<br />

{$submit} {$reset}
{$endform}
Je ne vois pas d'où peut provenir l'erreur .... Merci d'avance

Citation :#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~
#~ Version du CMS: ?
#~ Nom de l'hébergeur : Celeonet
#~ Informations Système :
#~ CGExtension 1.18.8
#~ Feu 1.8.5
#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~
re,

Version du CMS: ? ???
déjà mettre à jour les modules cités Wink.
tu créé un module ? un vrai ?

ou tu créé un UDT (balise utilisateur) c'est pas pareil du tout...

p.ricci

Version du CMS

CMS Made Simple version 1.6.7

Oui c'est un vrai module.
C'est une gestion de numéro de lot pour des études cliniques.
Mais bon rien d'extra ordinaire juste l'ajout de numéro et les liés à des utilisateurs de feu.


Ma solution est de ne plus utiliser CGExtension pour faire mon module et de le faire classiquement via CMSModule et la miracle sa fonctionne.

Si vous avez des infos sur la façon de créer des formulaires en étendant CGExtension je suis preneur car voici la description du module
CGExtensions Module
A set of addon utilities and conveniences for writing CMS Made simple modules. Primarily this module contains a new class (derived from CMSModule) to act as a base class for modules.

Merci et dsl de vous avoir fait perdre un peu de votre temps.
je n'ai jamais étendu CGExtension pour mes modules et je peux donc pas te renseigner :/

p.ricci

Je cherche désespérément à mettre [résolu] dans le titre
édition du premier message, modifie le titre, enregistre