psvneo / t3-extension-t3adminer
Adminer as BE module to work with the database. Fork of the t3adminer extension.
Installs: 18
Dependents: 0
Suggesters: 0
Security: 0
Type:typo3-cms-extension
pkg:composer/psvneo/t3-extension-t3adminer
Requires
- php: ^8.2
- ext-phar: *
- typo3/cms-backend: ^13.4
- typo3/cms-core: ^13.4
Requires (Dev)
- psvneo/qa-toolset-t3: ^4.0
README
Integrate Adminer as a TYPO3 backend module for database management directly within the TYPO3 backend.
This extension is a fork of jigal/t3adminer, updated and maintained for TYPO3 v13.
Features
- Full-featured database management interface powered by Adminer
- Seamless integration into TYPO3 backend with automatic authentication
- Support for multiple database drivers (MySQL, PostgreSQL, SQLite, MS SQL)
- IP-based access restrictions for enhanced security
- Export/import functionality with configurable directory
- Multi-language support (detects TYPO3 backend language)
- Integrated into TYPO3's module menu under "Tools"
Requirements
- PHP 8.2 or higher
- TYPO3 13.4 or higher
- PHP Phar extension
- Adminer script (included in Resources/Public/Adminer/)
Installation
Via Composer (Recommended)
composer require psvneo/t3-extension-t3adminer
Manual Installation
- Download the extension from the repository
- Place it in
typo3conf/ext/psvneo_t3adminer/orpackages/psvneo_t3adminer/ - Run
composer installin the extension directory - Activate the extension in the Extension Manager
Initial Setup
The Adminer script is included in the extension. After installation, verify that the file exists:
extensions/psvneo_t3adminer/Resources/Public/Adminer/t3adminer.php
Configuration
Extension Configuration
Configure the extension via Settings → Extension Configuration → psvneo_t3adminer:
Access Control
IPaccess (string)
- Comma-separated list of IP addresses allowed to access Adminer
- Example:
192.168.1.1, 192.168.1.100 - Leave empty to allow all IPs (not recommended for production)
applyDevIpMask (boolean)
- When enabled, restricts access to IPs defined in
$GLOBALS['TYPO3_CONF_VARS']['SYS']['devIPmask'] - Takes priority over the
IPaccesssetting - Default: disabled (0)
Storage
exportDirectory (string)
- Directory for database exports (absolute path or relative to document root)
- Default:
fileadmin - Example:
fileadmin/adminer_exports
Security Recommendations
- Always restrict access using IP restrictions in production environments
- Use
applyDevIpMaskto leverage TYPO3's existing IP restrictions - Ensure the export directory is not publicly accessible
- Grant access only to system maintainer users (configured by default)
Usage
- Log into the TYPO3 backend as a system maintainer
- Navigate to Tools → Adminer in the module menu
- The Adminer interface will open with automatic authentication to your TYPO3 database
Automatic Features
- Database credentials are automatically populated from TYPO3 configuration
- Backend language is detected and applied to Adminer UI
- Session management is handled automatically
- TCA information is available for enhanced database understanding
Technical Details
TYPO3 v13 Compatibility
This extension has been fully updated for TYPO3 v13 with the following improvements:
- Migrated to new
ModuleTemplateAPI (removed deprecatedsetContent()andrenderContent()) - Updated to use
Localeobject for language detection instead of deprecated properties - Added proper type safety for all database operations
- Refactored controller for better maintainability and reduced complexity
- Full PHP 8.2 compatibility with modern syntax (match expressions, typed properties)
Supported Database Drivers
- MySQL / MariaDB (
mysqli,pdo_mysql) - PostgreSQL (
pdo_pgsql) - SQLite (
pdo_sqlite) - Microsoft SQL Server (
mssql)
Development
Quality Assurance
The extension uses PSV Neo's QA toolset for code quality:
# Lint code
composer lint
# Fix code style issues
composer fix
# Run static analysis
composer qa
# Run refactoring tools
composer refactoring
Available Scripts
composer lint- Run all linting tools (PHP, code style, TYPO3 scanner, etc.)composer fix- Auto-fix code style and editorconfig issuescomposer qa:analyse- Run PHPStan static analysiscomposer qa:phpmd- Run PHP Mess Detectorcomposer lint:typo3scan- Scan for deprecated TYPO3 API usage
Troubleshooting
"Adminer not installed" Error
Verify that the Adminer script exists:
ls -la extensions/psvneo_t3adminer/Resources/Public/Adminer/t3adminer.php
If missing, check that the extension was properly installed and the Resources/Public/Adminer/ directory is intact.
Access Denied / IP Restriction
- Check your IP address matches the configured restrictions
- Verify
devIPmasksettings in Install Tool (ifapplyDevIpMaskis enabled) - Ensure you're logged in as a system maintainer
Session Issues
If experiencing session-related problems:
- Clear TYPO3 backend sessions
- Clear browser cookies for the TYPO3 domain
- Check that session configuration in
config/system/settings.phpis correct
License
GPL-3.0-or-later
Credits
- Original extension: jigal/t3adminer
- Adminer: https://www.adminer.org
Changelog
Version 13.x
- TYPO3 v13 compatibility
- Updated to modern TYPO3 API (ModuleTemplate, Locale)
- PHP 8.2 minimum requirement
- Improved code quality and maintainability
- Enhanced type safety throughout the codebase