View Issue Details

IDProjectCategoryView StatusLast Update
0037464mantisbtuipublic2026-10-28 10:30
Reporterc_schmitz Assigned Tocommunity  
PrioritynormalSeverityminorReproducibilityalways
Status assignedResolutionopen 
Product Version1.3.0 
Target Version2.29.0 
Summary0037464: Email address inputs are limited to 64 characters although the DB column holds 191
Description

user.email was created as C(64). Schema upgrade step 208 widened it to C(191), and step 211 did the same for email.email. The HTML email inputs still have a hard-coded maxlength="64", so the browser won't accept an email address longer than 64 characters, even though the database can store it.

Affected inputs:

core/print_api.php:245: print_email_input(), which is used by account_page.php, manage_user_create_page.php and manage_user_edit_page.php
signup_page.php:95
lost_pwd_page.php:106

Steps To Reproduce

1.) Go to Manage → Manage Users and edit any user. You can also use My Account or the signup page.
2.) Paste an email address longer than 64 characters into the Email field, for example firstname.lastname.department.subdivision@mail.long-company-name-example.com.
3.) The input stops at character 64, so the full address can't be saved.

Expected result:
Email addresses up to the column size of 191 characters can be entered.

Additional Information

Suggested fix: add a constant next to the other DB_FIELDSIZE* constants in core/constant_inc.php:

define( 'DB_FIELD_SIZE_EMAIL', 191 );
Then use it instead of the literal 64 in the three places above, for example:

maxlength="' . DB_FIELD_SIZE_EMAIL . '"
We applied this fix in our installation (LimeSurvey's bug tracker) and can submit it as a pull request.

TagsNo tags attached.

Relationships

related to 0020465 closeddregad Reduce size of username and email fields to allow utf8mb4 charset 
related to 0027982 closedvboctor Email field in mantis_email_table is shorter than user email in mantis_user_table