Fork me on GitHub






Champs obligatoire dans un formulaire
Newbie
Inscrit: 08/12/2009 07:15
De Narbonne
Messages: 8
Bonjour à tous !
Je suis en train de créer un module interne pour ma société et dans un formulaire j'ai demandé à ce que certains champs soient obligatoire.
malheureusement, xoops ne vérifie pas si des données sont saisies ou pas.

Voici un extrait du formulaire :

include_once XOOPS_ROOT_PATH.'/class/xoopsformloader.php';
$form = new XoopsThemeForm(_NEEDINFO'add_newevent''index.php?op=saveevent');
$form->addElement(new XoopsFormText(_SCAN_NBCOLIS " :"'int_nbcolis''2''2'), true);
$form->addElement(new XoopsFormHidden('op'"saveevent"));
$form->addElement(new XoopsFormButton('''submit'_SUBMIT'submit'));
$form->assign($xoopsTpl);


Pourtant j'ai mis "True" sur la ligne
$form->addElement(new XoopsFormText(_SCAN_NBCOLIS " :"'int_nbcolis''2''2'), true);


Je comprends pas.
Y'a un script à intégrer dans le thème ?
A part
<{$xoops_module_header}>


Merci de votre aide.

Posté le : 16/12/2009 18:19
Partager Twitter Partagez cette article sur GG+
Re: Champs obligatoire dans un formulaire
Xoops accro
Inscrit: 20/02/2008 20:27
De Belgium
Messages: 2708
Quelle code html est generee pour le formulaire?

Posté le : 16/12/2009 21:01

Salutations, Gerard.
PS: Excusez mon mauvais français.
De la bonne manière de poser les questions
Partager Twitter Partagez cette article sur GG+
Re: Champs obligatoire dans un formulaire
Newbie
Inscrit: 08/12/2009 07:15
De Narbonne
Messages: 8
Voilà :
<form name="add_newevent" action="index.php?op=saveevent" method="post" onsubmit="return xoopsFormValidate_add_newevent();">


Grace à ta question, j'ai pu constater que la fonction "xoopsFormValidate_add_newevent" n'est pas dans le code HTML généré.

Une idée du pourquoi du comment ?

Merci


[Ajout]
J'ai trouvé !!

En fait je n'utilise pas "$form->display();" pour afficher le formulaire.
J'utilise "$form->assign($xoopsTpl);".
Ceci me permet d'intégrer le formulaire dans un template personnalisé.

J'ai plus qu'à chercher comment intégrer le formulaire dans mon template sans perdre les vérifications.

[Ajout bis]
Faut pas que j'utilise ceci :
$xoopsTpl->assign('UserMenu'loadModuleUserMenu(0));


mais ceci :
echo loadModuleUserMenu(0);


Du coup, je garde ma structure avec les onglets puis les messages puis le formulaire.

Merci

Posté le : 17/12/2009 08:38
Partager Twitter Partagez cette article sur GG+
Re: Champs obligatoire dans un formulaire
Newbie
Inscrit: 08/12/2009 07:15
De Narbonne
Messages: 8
Re-bonjour !

Juste pour partager ce que j'ai eu du mal à trouver.
Comment vérifier qu'un choix a été fait dans une liste déroulante.

Pré-requis :
Le premier item de la liste des éléments de la liste dans la base SQL doit avoir un id égal à 1

// Création de la liste
$list = new XoopsFormSelect(_DT_LABEL_LISTE " :"'int_liste_1'null false);

// Creation de la requete SQL issue d'une classe
$sql_list $dbquery->retrieve_liste_1();

// Ajout de l'item 0 qui doit être changé
$list->addOption(0"--------");

// Boucle de remplissage de la liste
while ( list($list_id$list_name) = $xoopsDB->fetchRow($sql_list) ) {
    
$list->addOption($list_id$list_name);
}

// Récupere le nom de la liste
$eltname $list->getName();

// Création du message d'erreur
$eltmsg str_replace('"''"'stripslashes(sprintf(_DT_ERROR_MSG)));

// Ajout du code de validation
// On verifie que l'item 0 n'est pas sélectionné
$list->customValidationCode[] = "if ( myform.{$eltname}.selectedIndex == 0 ) { window.alert("{$eltmsg}"); myform.{$eltname}.focus(); return false; }";

// Ajout de l'élément au formulaire
$form->addElement($listtrue);

Posté le : 17/12/2009 17:19
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

23 Personne(s) en ligne (19 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 23 | Plus ...