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.
Basic options
Section titled “Basic options”- 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.
Visibility
Section titled “Visibility”- 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, andfield!=matches any value.
Field options
Section titled “Field options”- 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 weekorfirst 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.
Validation
Section titled “Validation”- 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.
Advanced options
Section titled “Advanced options”- 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.
In viewers
Section titled “In viewers”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'])) ?>Pseudo-fields
Section titled “Pseudo-fields”-
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.