13 Posts
Pold
9 years ago
3
Topic

bonjour !
J'ai un petit soucis sur un formulaire et j'aurais besoin de vos lumières... A la modification d'un article (déjà créé, donc) j'ai besoin de récupérer l'id de l'article et de l'insérer dans une chaîne de caractères afin de changer les paramètres d'un module. Les infos à enregistrer dans mon formulaire seraient donc du genre :

{"id":"14","show_intro_only":"1","show_title":"1","image":"1","show_author":"0","show_category":"1","show_parent_category":"0","show_create_date":"1","show_modify_date":"0","show_publish_date":"0","show_hits":"0","show_readmore":"1","layout":"_:default","moduleclass_sfx":"","cache":"0","cache_time":"900","cachemode":"static","load_mootools":"0","module_tag":"div","bootstrap_size":"0","header_tag":"h3","header_class":"","style":"0"}

Pour ce faire, j'ai voulu créer un champs texte A avec {"id":", un autre B avec toute la fin de la chaîne et concaténer tout ça avec art_id (14 dans l'exemple ci dessus) afin d'avoir A.art_id.B.

malheureusement la concaténation ne semble pas prendre en compte les caractères spéciaux. Est-ce que le "SD Field Concat" me permettrait de d'obtenir cette chaîne de caractères ?

Merci d'avance de votre aide !!

Get a Book for SEBLOD
9 years ago
2
Level 1

Bonjour Pold,

j'aurai plutôt procédé de cette manière :

  • un champ texte (my_field_tag) avec une valeur par défaut comprenant un tag : {"id":"#ID#","show_intro_only":"1","show_ti......
  • Un champ code beforestore avec un code du style :
if ( $config['pk'] ) {
      $fields['my_field_tag']->value = str_replace( '#ID#', $config['pk'], $fields['my_field_tag']->value );
      $name = $fields['my_field_tag']->storage_field;
      $table = $fields['my_field_tag']->storage_table;
      $config['storages'][$table][$name] = $fields['my_field_tag']->value;
}

Vous pourriez aussi bien le faire dans un champ code "Afterstore" directement à la première soumission de l'article puisque l'ID de l'article est connue à cet instant.


Bien cordialement.

Lionel

13 Posts
Pold
9 years ago
1
Level 2

Bonjour ! Merci pour cette réponse. Je ne connaissais pas ces champs code beforestore et afterstore mais je sens que ça va être bien cool ! J'ai donc acheté sans hésiter le pack de 5 plug-in.

Bon, après un 1er essai c'est pas encore ça. Je fais encore quelques tests, mais je risque d'avoir encore des questions ! Une seule pour le moment : dans votre code, qu'est ce que la variable $config['pk'] ?

Encore merci pour cette voie !

9 years ago
0
Level 3

Bonjour Pold,

Pk veut dire "primary key". Cela correspond à l'identifiant de votre contenu.

Cordialement,
Mehdi

Get a Book for SEBLOD