api de gestion de ticket, basé sur php-crud-api. Le but est de décorrélé les outils de gestion des données, afin
Find a file
Maurits van der Schee eced489299 Update README.md
2015-02-10 19:07:46 +01:00
.gitignore Initial commit 2015-02-10 02:09:47 +01:00
.htaccess renamed id to key 2015-02-10 19:03:29 +01:00
config.php.dist Initial commit 2015-02-10 02:09:47 +01:00
read.php Added read single item 2015-02-10 18:21:24 +01:00
read_key.php rename read_id to read_key 2015-02-10 19:01:51 +01:00
README.md Update README.md 2015-02-10 19:07:46 +01:00

MySQL-CRUD-API

Simple PHP script that adds a very basic API to a MySQL database

Requirements

  • PHP 5.3 or higher with MySQLi enabled
  • Apache with mod_rewrite enabled (can also run on Nginx)

Limitations

  • Public API only: no authentication or authorization
  • Read-only: no write or delete supported
  • No pagination or column selection: always returns full table
  • Single database

Features

  • Very little code, easy to adapt and maintain
  • Streaming data, low memory footprint
  • Condensed JSON: first row contains field names
  • Optional white- and blacklist support for tables
  • JSONP support for cross-domain requests
  • Combined requests with wildcard support for table names

Configuration

$config = array(
    "hostname"=>"localhost",
    "username"=>"root",
    "password"=>"root",
    "database"=>"blog",
    "whitelist"=>false,
    "blacklist"=>array("users"),
);

Example output

GET http://localhost/api/cate*

{"categories":{"columns":["id","name"],"records":[["1","Internet"],["3","Web development"]]}}

GET http://localhost/api/categories/1

{"id":"1","name":"Internet"}

Installation

Put the files in a folder named "api" and edit config.php.dist and rename it to config.php. Let Apache serve the parent folder or configure the .htaccess RewriteBase to match the exposed part of the path.

License

MIT