CoreProtect Lookup Webinterface icon

CoreProtect Lookup Webinterface -----

View your CoreProtect data with a web panel!



Setup

Prerequisites
  • A web server with PHP 8.4 is used for current development verification.
  • Required extensions: PDO, plus PDO-SQLITE or PDO-MYSQL for the selected database type.
  • A CoreProtect database used by CoreProtect v23.2 or above.
  • If using SQLite in real-time, the web server must be on the same machine as the Minecraft server.
CoreProtect v23.2 Database Support

The v23.2 lookup path expects these CoreProtect tables for full functionality:
  • `co_block`
  • `co_container`
  • `co_item`
  • `co_sign`
  • `co_chat`
  • `co_command`
  • `co_session`
  • `co_username_log`
  • `co_user`
  • `co_world`
  • `co_material_map`
  • `co_entity_map`
  • optional `co_blockdata_map`
The table prefix is configurable in `config.php`; `co_` is the default.

The web interface detects schema capabilities per request and returns them in `lookup.php` JSON metadata. If a database lacks a new v23 table required by a selected action, the request returns a clear unsupported-schema error instead of a raw SQL failure.

Detected optional columns and tables include:
  • `co_item`
  • `co_sign`
  • `co_blockdata_map`
  • `co_block.meta`
  • `co_block.blockdata`
  • `co_container.metadata`
  • `co_item.data`
  • chat/command coordinate columns
Minimum MySQL/MariaDB permissions for lookup-only use:

``` sql
GRANT SELECT ON coreprotect_database.* TO 'lookup_user'@'web_host';

```

Use a least-privilege database user for production. The web interface does not need write permissions for lookups.

Download
Configuration

Edit all the necessary configuration from `config.php`. All fields are
documented in the configuration file.

Example MySQL database entry:

``` php
'server' => [
'type' => 'mysql',
'host' => 'localhost:3306',
'database' => 'minecraft',
'username' => 'lookup_user',
'password' => 'password',
'flags' => '',
'prefix' => 'co_',
'preBlockName'=> true,
'mapLink' => '',
],

```

Important form safety settings:

``` php
'form' => [
'count' => 30, // default lookup limit
'moreCount' => 10, // default "load more" limit
'max' => 300, // maximum accepted query limit
'maxCoordinateVolume' => 5000000, // maximum x/y/z selection volume; 0 disables
'timeoutSeconds' => 20, // PHP and DB statement timeout hint; 0 disables
],

```

Oversized lookups return JSON errors such as `Query too large` or
`Query timed out`; they should not produce HTML PHP warning output in AJAX responses.

Security / Access Control

This CommunityCraft rework does not include built-in login/authentication.
Run it behind external protection when exposing it outside trusted networks.
Recommended options:
  • reverse-proxy authentication
  • VPN or private network only
  • web-server IP allowlists
  • latform-level SSO/access control
Use a read-only database account. Lookup-only access only needs `SELECT`.

Example SQLite database entry:

``` php
'server' => [
'type' => 'sqlite',
'path' => '/path/to/database.db',
'prefix' => 'co_',
'preBlockName'=> true,
'mapLink' => '',
],

```

Local PHP 8.4 Run

If PHP is available on your PATH, start the local development server with:

``` sh
php -v
php -S 127.0.0.1:18080

```

Open ` http://127.0.0.1:18080/index.php`.

If `pdo_mysql` is not loaded, enable it in your PHP configuration before using
MySQL/MariaDB. You can confirm loaded modules with:

``` sh
php -m

```
Resource Information
Author:
----------
Total Downloads: 10
First Release: May 19, 2026
Last Update: May 19, 2026
Category: ---------------
All-Time Rating:
0 ratings
Find more info at github.com...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings