Submitted by ely.aicha on
Re
comment programmer un autre bouton que j'ai ajouté c a d en cliquant sur ce bouton m'envoi vers une page précise ???
En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".
Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact
De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.
Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".
Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.
Submitted by ely.aicha on
Re
comment programmer un autre bouton que j'ai ajouté c a d en cliquant sur ce bouton m'envoi vers une page précise ???
Bonjour, Tu ajoutes un autre
Permalien Soumis par flebrenn le 29 Juin, 2012 - 11:43
Bonjour,
Tu ajoutes un autre bouton submit :
http://stackoverflow.com/questions/9290407/drupal-7-custom-module-create...
Et dans ta fonction de submit (un fois que tu as procédé à ton traitement, tu peux utiliser http://api.drupal.org/api/drupal/includes!common.inc/function/drupal_goto/7 pour rediriger vers une autre page.
Bonjour je voudrais que mon
Permalien Soumis par ely.aicha le 29 Juin, 2012 - 12:09
Bonjour
je voudrais que mon bouton soit indépendant des contrôles de validation traités dans ma fonction submit . J 'ai spécifié la page dans drupal_goto mais quand je clique il m affiche les messages d'erreur que j'ai établi lors de la validation moi je voudrais que quand je clique m envoi directement vers ma page spécifié sana faire de contrôle
voila ou j'ai écrit drupal goto
function test_form_block_submit(&$form, &$form_state) {
drupal_set_message($form_state['values']['radical']);
drupal_set_message($form_state['values']['num_credit']);
$form_state['redirect'] = 'node/7';
et mercii
}
function mymodule_my_form_action_one($form, &$form_state) {
drupal_goto('node/7');
}
Peux-tu poster plus de code
Permalien Soumis par flebrenn le 29 Juin, 2012 - 12:32
Peux-tu poster plus de code et utiliser les balises < code > < /code > pour une meilleure lisibilité ?
Merci
<?phpfunction
Permalien Soumis par ely.aicha le 29 Juin, 2012 - 12:40
Je crois que j’ai trouvé.
Permalien Soumis par flebrenn le 29 Juin, 2012 - 15:26
Je crois que j'ai trouvé. J'ai séparé très clairement le process de validation et soumission des deux boutons. A tester :
<?php
$form['type_credit'] = array(
$form['submit'] = array(
$form['liste'] = array(
function test_form_block($form, &$form_state){
$form = array();
$form['radical'] = array(
'#type' => 'textfield',
'#size' => '30',
'#maxlength' => "7",
'#title' => t('Radical'),
'#description' => t('veuillez saisir le Radical'),
'#required' => TRUE,
);
'#title'=> t('Type de credit'),
'#type' => 'select',
'#options' => array(
0 => t('Investissement'),
1 => t('Remboursable par echeance fixe'),
2 => t('Credit a court terme'),
),
'#description' => t('veuillez Choisir un type de credit'),
);
'#type' => 'submit',
'#value' => t('Charger'),
'#submit' => array('submit1_form_submit'),
);
'#type' => 'submit',
'#value' => 'Liste des clients',
'#submit' => array('submit2_form_submit'),
);
return $form;
}
function
submit1_form_validate(&$form, &$form_state) {if (!is_numeric($form_state['values']['radical'])) {
return form_set_error('radical', 'Le radical doit etre numerique');
}
if(
strlen($form_state['values']['radical'])<7) {return form_set_error('radical', 'veuillez saisir 7 caracteres');
}
}
function
submit1_form_submit(&$form, &$form_state) {drupal_set_message($form_state['values']['radical']);
$form_state['redirect'] = 'node/7';
}
function
submit2_form_submit($form, &$form_state) {drupal_goto('node/7');
}
function
test_form_alter(&$form, &$form_state, $form_id) {dpm($form_id); // télécharger et activer le module devel et être loggué en tant qu"admin pour voir le bon form_id et changer le something ci-dessous
if($form_id == 'something') {
$form['#validate'][] = 'submit1_form_validate';
}
}
?>
normalement d’après le code
Permalien Soumis par ely.aicha le 29 Juin, 2012 - 16:58
normalement d’après le code le 2 eme bouton doit pas faire les contrôles de champs mais :( il contrôle les champs ensuite me transmet à la page spécifié :(:(
c’est bon j’ ai oublié
Permalien Soumis par ely.aicha le 29 Juin, 2012 - 17:02
c'est bon j' ai oublié d'enlever '#required' => TRUE, c'est pour ça me donne à chaque fois ""le champs est requis "" mercii bien pour votre temps :D
Peux-tu mettre cette
Permalien Soumis par flebrenn le 29 Juin, 2012 - 17:45
Peux-tu mettre cette discussion en "résolu" s'il te plait.
Merci d'avance