Skip to content

Date/Time

Date/time fields store dates, optionally with a time of day. This page covers the options available when editing a date/time field in the Field Editor.

Field label

The text displayed beside the field when editing a record.

Database Field

The name the database and program use to refer to the field. In viewers you reference it as:

<?php echo $record['fieldname'] ?>

If you rename an existing field, update any references to it in your viewers and Database Editor settings. Some field names have special built-in behavior. See Special Fieldnames.

Field type

The type of input the field accepts. Each field type has different options. Note that the separator field type doesn’t require a field label or field name.

Help tooltip

Displays a help icon after the field label; hovering over it shows this message as a tooltip.

Show for

Limits who can see and edit the field: Everyone, Editors and admins, Admins only, or Nobody. Users without access don’t see the field when creating, modifying, or viewing records (new records save the default value), and the field isn’t shown as a list column.

Show if

Shows or hides the field on the record edit page based on another field’s value. Pick a field, an operator, and a value. Operators are equals, does not equal, contains, starts with, and ends with (is checked / is not checked for checkbox fields). Use | between values to match any of several (e.g. draft|pending); for multi-value fields, any matching value counts.

Select Custom expression for AND conditions and multi-field rules, using =, !=, *= (contains), ^= (starts with), and $= (ends with) as operators, e.g. type=article AND status!=draft|pending. AND binds tighter than OR, field= matches empty or unchecked, and field!= matches any value.

Default value

The date the field shows when creating a new record: Current Date, None / Blank, or a custom date. Custom dates accept any PHP strtotime() expression, such as +1 week or first day of next month, with a live preview shown as you type.

Existing records

Shown only when adding a new field. Check “Update all existing records with the default value above” to fill the new column for existing records; otherwise existing records get 0000-00-00 00:00:00.

Field prefix

Text displayed before or above the field.

Field description

Text displayed after the field.

Specify time

Determines whether users can enter a time (hours and minutes) alongside the date.

Specify seconds

Determines whether users can enter seconds.

Use 24 hour time

Displays the time in 24-hour format rather than 12-hour format.

Year range

Specifies which years are selectable in the date field.

Required

Requires the user to enter a value for the field, showing an error if the field is left blank.

Unique

Requires the user to enter a unique value for the field, showing an error if another record has the same value.

System field

System fields cannot be edited and have no modify or erase link unless “System Field Editing” is enabled (under Advanced Commands on the field list page). This prevents accidental changes to fields the program relies on.

MySQL column type

The MySQL column type used to store the field. Auto (the default) picks a type appropriate to the field type; you can also choose from preset text/string, numeric, and date/time types, or enter a custom column type.

MySQL indexing

Creates a MySQL column index for the field, which speeds up sorting and some searches but slows down adding and saving records.

Data encryption

Automatically encrypts data stored in the column. Requires a database encryption key (set on the Security settings page) and the MySQL general query log to be disabled; enabling encryption also sets the column type, which can’t be changed while encryption is on. Back up the database before encrypting, and back up the encryption key. Without it the data is unrecoverable.

The field holds a MySQL datetime string such as 2026-08-31 14:30:00, with the time portion zeroed when time entry is disabled. Format it for display with PHP’s date() function:

<?php echo date("D, M jS, Y g:i a", strtotime($record['eventDate'])) ?>
fieldname:unixtime

The date as a unix timestamp, handy with PHP’s date() function.

Pseudo-fields can be turned off with the loadPseudoFields viewer option. See the Pseudo-field Reference.

Documents CMS Builder 3.83