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

1.0.0 2026-01-06 17:11 UTC

This package is auto-updated.

Last update: 2026-01-06 17:13:53 UTC


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

  1. Download the extension from the repository
  2. Place it in typo3conf/ext/psvneo_t3adminer/ or packages/psvneo_t3adminer/
  3. Run composer install in the extension directory
  4. 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 IPaccess setting
  • 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

  1. Always restrict access using IP restrictions in production environments
  2. Use applyDevIpMask to leverage TYPO3's existing IP restrictions
  3. Ensure the export directory is not publicly accessible
  4. Grant access only to system maintainer users (configured by default)

Usage

  1. Log into the TYPO3 backend as a system maintainer
  2. Navigate to Tools → Adminer in the module menu
  3. 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 ModuleTemplate API (removed deprecated setContent() and renderContent())
  • Updated to use Locale object 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 issues
  • composer qa:analyse - Run PHPStan static analysis
  • composer qa:phpmd - Run PHP Mess Detector
  • composer 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

  1. Check your IP address matches the configured restrictions
  2. Verify devIPmask settings in Install Tool (if applyDevIpMask is enabled)
  3. Ensure you're logged in as a system maintainer

Session Issues

If experiencing session-related problems:

  1. Clear TYPO3 backend sessions
  2. Clear browser cookies for the TYPO3 domain
  3. Check that session configuration in config/system/settings.php is correct

License

GPL-3.0-or-later

Credits

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