Insertion éléments formulaire dans une autre table

Events happening in the community are now at Drupal community events on www.drupal.org.
dionsy's picture

Bonjour les experts,

Y'a t-il un moyen d’insérer directement les éléments d'un formulaire dans une table autre que celles créées par le module webform ?

Je vous remercie d'avance.

Comments

Salut Dionsy, Un lien qui

babacar's picture

Salut Dionsy,
Un lien qui pourra peut être t'aider http://www.up2technology.com/blog/drupal-7-data-module/

Good Luck

The more we know about Drupal,The better !!!!!

Salut Babacar, Je te remercie

dionsy's picture

Salut Babacar,

Je te remercie de ta réponse.

En fait j'utilise déjà le module data pour mes vues, ça fonctionne bien, là maintenant je voudrais que quand je soumets un formulaire que les infos aillent dans mes tables et pas dans celles du module webform.

Autre chose, avec le module Data, j'ai plus les champs "modifier" , "supprimer" lors de la création d'une vue.

Peut être un petit module du

babacar's picture

Peut être un petit module du genre.

<?php
function MONMODULE_form_alter(&$form, &$form_state, $form_id) {

    if(
$form_id == "YOUR_WEBFORM_ID") {
       
$form['#submit'][] = 'MONMODULE_additional_insert';
    }
}
?>

<?php
function MONMODULE_additional_insert($form, &$form_state) {

 
$data = $form['submitted'];

  
// Inserer un enregistrement dans une custom table record a la soumission du webform.
  
db_insert('ma_table')
     ->
fields(array(
      
'test' => $data['TEST_FIELD']['#value'],
  ))
  ->
execute();

}
?>

Hope this snippet will help .....
Get back to us ASAP

The more we know about Drupal,The better !!!!!

Merci Babacar, je teste ça je

dionsy's picture

Merci Babacar,
je teste ça je te reviens.

hook_menu + Form API

knibals's picture

Salut les gars! Puis-je suggérer de:

Ensuite, il suffit de capturer le submit comme dans l'exemple #2 de Babacar pour injecter les données dans la BDD. Ou envoyer par email. Ou.. enfin, bref!

POF

Petit à petit, on devient moins petit

@babacar:

dionsy's picture

@babacar: MONMODULE_additional_insert($form, &$form_state) () insert bien dans ma table mais en même temps dans webform (ce que je voulais éviter).

Slt @Dionsy, je pense que la

mano2003's picture

Slt @Dionsy, je pense que la meilleure solution c'est de créer ton propre module et oublier webform comme le suggère @POF. Je pense que c'est compliqué de vouloir "interdire" à webform d'insérer les données dans ses tables lol!
Je te suggère de faire un petit module où tu crées un bloc (où une page) de formulaire et tu fais ton traitement dans le hook_form_validate

@POF que veux tu dire par

dionsy's picture

@POF que veux tu dire par :

-> "créer une page avec ce bon vieux hook_menu"
-> "Ou envoyer par email. Ou.. enfin, bref!"
????? :-)

Précisions hook_menu and such

knibals's picture

:)

"créer une page avec ce bon vieux hook_menu" hook_menu est l'un des hook les plus célèbre de Drupal. Tu trouvera de la doc en abondance. Tu peux aussi cliquer sur le lien vers l'API que j'ai mis.
Pour résumer, hook_page Il te permet de créer une URL personnalisée (par exemple: http://[url]/dionsy/myform) dans laquelle tu peux placer ton formulaire custom.

"Ou envoyer par email. Ou.. enfin, bref!" == tu peux faire ce que tu veux des informations récupérées. Insérer dans une BDD, envoi par email ou sms, etc. etc.

POF

Petit à petit, on devient moins petit

Tout à fait cela insert dans

babacar's picture

Tout à fait cela insert dans webform parce que je voulais t’éviter de passer par la solution de Knibals qui est la meilleure à mon avis mais avec quelques lignes de codes de plus. Mais cette solution est plus facile à faire évoluer avec des SAV(Services à valeur ajoutée) dans le futur.

The more we know about Drupal,The better !!!!!

Bonjour les gars, J’espère

dionsy's picture

Bonjour les gars,

J’espère que vous avez passé un joyeux Noel.

Je vais faire comme a dit POF, je vous reviens.

Have a nice day.

Solved Thank you gays

dionsy's picture

Solved

Thank you gays

Bravo Dions!

knibals's picture

Comment tu as fait? Quelle solution tu as retenue? C'était compliqué?

Petit à petit, on devient moins petit

hello Dionsy Glad for

babacar's picture

hello Dionsy
Glad for you.
Could you please share your solution with the community?
Thanks

The more we know about Drupal,The better !!!!!

Hello les gars, veuillez

dionsy's picture

Hello les gars,

veuillez m'excuser pour ma réponse tardive, j’étais en arrêt maladie.

Voila j'ai procédé comme m'ont conseillé les gars:

J'ai crée un module dans lequel, j'ai utilisé:

hook_menu(), pour la création de page

hook_form(), pour la creation de mon formulaire

MONMODULE_additional_insert($form, &$form_state), pour l'insertion dans ma table

ensuite j'ai capturé le submit comme dans hook_form_alter()

voila j'espere que c'est clair !!!

Senegal

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: