Forum CMS Made Simple FR

Version complète : [RESOLU]Pas de valeur dans des paramètres
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.9
#~ Url du site : localhost
#~ Hébergeur / Soft :
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.11.9
#~ Installed Modules:
#~ CMSMailer: 5.2.2
#~ CMSPrinting: 1.0.5
#~ FileManager: 1.4.3
#~ MenuManager: 1.8.6
#~ MicroTiny: 1.2.5
#~ ModuleManager: 1.5.5
#~ News: 2.13
#~ Search: 1.7.11
#~ ThemeManager: 1.1.8
#~ TinyMCE: 2.9.12
#~ CGExtensions: 1.38
#~ Showtime: 3.3
#~ Gallery: 1.6.1
#~ SelfRegistration: 1.8.1
#~ FrontEndUsers: 1.22.2
#~ CGSimpleSmarty: 1.7
#~ JQueryTools: 1.2.5
#~ Products: 2.20.1
#~ CGSmartImage: 1.14.1
#~ ExtendedTools: 1.3.3
#~ MleCMS: 1.11.4
#~ Liste: 0.1
#~ AdvancedContent: 0.9.4.3
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template:
#~ max_upload_size: 250000000
#~ url_rewriting: mod_rewrite
#~ page_extension: .html
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale: en_EN.utf-8
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.3.13
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 0
#~ E_DEPRECATED: 8192
#~ memory_limit: 128M
#~ max_execution_time: 1800
#~ output_buffering: 1
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 200M
#~ upload_max_filesize: 250M
#~ session_save_path: c:/wamp/tmp (0777)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ xmlreader_class: On (Vrai)
#~ Server Information:
#~ Server Api: apache2handler
#~ Server Db Type: MySQL (mysqli)
#~ Server Db Version: 5.5.24
#~ Server Db Grants: Trouvé un privilège "GRANT ALL" qui semble être adapté
#~ Server Time Diff: Aucune différence de date du système de fichiers trouvées
#~ ----------------------------------------------
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~


Bonjour,

Je suis en train de faire un module catalogue sur le modèle de Cataloger.
Il m'a fallut ajouter un onglet dans mon nouveau type de contenu.
Cet onglet contient des attributs qui ont des valeurs dans des menus déroulants.
Mon problème : lorsque j'enregistre ma nouvelle page (ou que je la met à jour), les attributs de ce nouvel onglet sont bien créés dans le tableau $params, mais ils contiennent la valeur par defaut et pas la valeur que j'ai sélectionné.
Je vous met une partie du code que j'utilise :
Code :
[== PHP ==]
$notations = $this->getUserNotations();//Je recupère mes attributs
foreach ($notations as $key=>$val){//Pour chaque attribut
            
     if (isset($params['notation_'.$val->id])){//Si il existe dans $params
          $this->SetPropertyValue('notation_'.$val->id, $params['notation_'.$val->id]);//On assigne la valeur
     }
}

si dans :

Code :
[== PHP ==]
$this->SetPropertyValue('notation_'.$val->id, $params['notation_'.$val->id]);

on remplace $params['notation_'.$val->id] par du texte en dure (ex : toto ) $params prend bien la valeur.

Donc j'en conclu que mon problème viens du passage de ma valeur sélectionné à $params.

Si vous avez des piste ou une solution

Cordialement

Bobjo
die(print_r($params));

dis nous ce que contient $params, ça aidera à débugger ton soucis
Bonjour,

Merci de prendre du temps pour me répondre.

Alors je n'ai pas mis

die(print_r($params));

mais

echo '<pre>';
print_r($params);
echo '</pre>';

et voila le retour :
Avant enregistrement (quant je change de type de contenu)

Code :
[== Indéfini ==]
Array
(
    [serialized_content] => Tzo3OiJDb250ZW50Ijo0MTp....//J'ai tronqué la chaine car très longue
    [content_type] => product_content
    [title] =>
    [menutext] =>
    [parent_id] => -1
    [content_en] =>

    [firsttime] => 0
    [orig_content_type] => content
    [template_id] => 22
    [alias] =>
    [page_url] =>
    [searchable] => 1
    [active] => 1
    [showinmenu] => 1
    [secure] => 0
    [cachable] => 1
    [target] => ---
    [metadata] => {* Add code here that should appear in the metadata section of all new pages *}
    [pagedata] =>
    [thumbnail] => -1
    [image] => -1
    [titleattribute] =>
    [accesskey] =>
    [tabindex] =>
    [disable_wysiwyg] => 0
    [extra1] =>
    [extra2] =>
    [extra3] =>
    [ownerid] => 1
    [additional_editors] =>
)

Après enregistrement de la page (je suis en mode debug)
Code :
[== Indéfini ==]
Array
(
    [serialized_content] => TzoxNToicHJvZHVjdF9jb250Z....//La aussi la chaine est tronqué
    [content_type] => product_content
    [title] => test
    [menutext] => test
    [parent_id] => -1
    [template_id] => 23
    [sub_template] => 6
    [description] => test
    [decriptioncourte] => test
    [marque] => citroën
    [anne] => 2000
    [firsttime] => 0
    [orig_content_type] => product_content
    [notation_74] => 0//Ce sont ces 2 champs qui me pose problème
    [notation_75] => 1//Ce sont ces 2 champs qui me pose problème
    [submitbutton] => Envoyer
)


On retrouve bien mes champs dans $params mais il n'ont pas la bonne valeur....

Cordialement

Bobjo
t'es côté front ou back office ?

si frontoffice regarde dans ton module le fichier ./Foo.module.php (Foo étant le nom de ton module)

As tu mis une directive Restricted Param dans SetParameter() ?


sinon tu attendais quelle valeur dans ces deux champs ? ça vient d'ou ? d'un selectbox ? d'un inputtext ?
C'est bon j'ai trouvé d’où venait mon problème.

Je suis dans le back. Dans Contenu->Page Ajouter un nouveau contenu.

Mon problème était dans la structure des onglets de mon type de contenu. Je n'avais plus les valeurs de l'onglet option et cela devait empêcher de l'enregistrement de mes champs.

Merci encore bess pour avoir pris du temps pour me répondre.

Cordialement

bobjo