[development] form_set_error and updating form values

Mukesh Agarwal mukesh.agarwal17 at gmail.com
Mon Feb 20 08:27:42 UTC 2012


The place to implement logic based form_set_error should be in the validate
function and not template.php .. I would recommend you use
hook_form_alter<http://api.drupal.org/api/drupal/modules%21system%21system.api.php/function/hook_form_alter/7>->
$form_id will indicate the form you wish to alter, and there you can
add
a custom validate function in $form['#validate'] -- the custom function
should then take care of form_set_error

http://api.drupal.org/api/drupal/includes%21form.inc/function/form_set_error/7--
you need to set the element name as first parameter to make sure that
the particular field is highlighted.

On Mon, Feb 20, 2012 at 1:51 PM, Athanasios Velios <a.velios at gmail.com>wrote:

> Hello,
>
> I am trying to alter a form (uc_cart_view_form) with various input fields
> (Qty for products). In template.php I am adding some extra logic which
> applies across a selection of these fields. Once the logic is checked I
> need to display an error message. I am using form_set_error to show the
> message. The problem is that the user then updates the input values and
> updates the form, but the new figures are not taken into account. They are
> shown in the form, but not used in my template.php extra logic.
>
> drupal_set_message allows the new values to work but the message appears
> twice and it does not, obviously, link to specific fields in the form which
> are problematic.
>
> Setting form_state rebuild to true before form_set_error does not have an
> effect.
>
> Any ideas of what needs to be done for these values to be taken into
> account with form_set_error?
>
> Thanks
>
> Thanasis
>



-- 
Cheers,
Mukesh Agarwal
________________________________
Innoraft Solutions <http://www.innoraft.com>  || +91 8017220799
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/development/attachments/20120220/2bbcdfc1/attachment.html 


More information about the development mailing list