Consider this form element:
$form['my_checkboxes'] = array(
'#type' => 'checkboxes',
'#title' => 'my Checkboxes',
'#options' => array(
1 => 'one',
2 => 'two',
3 => 'three',
4 => 'four',
),
'#default_value' => 2,
);
The above throws the following error:
Warning: Invalid argument supplied for foreach() in form_type_checkboxes_value()
(line ... of /var/www/html/includes/form.inc).
This is because the #default_value
for '#type' => 'checkboxes'
is always expected to be provided in a form of an array. So in order to fix the above, the code should be changed to this instead:
- '#default_value' => 2,
+ '#default_value' => array(2),
This always trips me, and although it makes sense in cases where multiple checkboxes from the #options
need to be ticked, it feels silly to impose on developers when we can fix it for them.
See the following resources: - https://www.drupal.org/project/drupal/issues/3009881 - https://www.drupal.org/project/drupal/issues/1768464 - https://www.drupal.org/forum/support/module-development-and-code-questio...
Recent comments
We can no longer add contrib projects in the Tugboat sandboxes that we use for core PR's? Can this be fixed or is there a reason for this? We can add contrib projects to demo...
Apr 25th Weekly Meetings
The Mail System and MimeMail modules are now installed. I'll let you know if they solve the problem. Edit: Using Mail System with MimeMail I was able to send plain text emails. There is...
HTML Email treated as plain text
If you haven't already I recommend installing Mail System and MimeMail. The latter will help format emails as HTML and first helps with configuring which module will handle the formatting...
HTML Email treated as plain text