diff options
author | Harald Eilertsen <haraldei@anduin.net> | 2024-04-26 10:06:03 +0200 |
---|---|---|
committer | Harald Eilertsen <haraldei@anduin.net> | 2024-04-26 10:06:03 +0200 |
commit | f9b93c4bbb23b452551bd46ce86cc6e3602fd594 (patch) | |
tree | 3fd8f14afb8248fcd9a3092a3f8ee1755dc936c3 /web/include/api.php | |
parent | 975c0b735be0808883116616d934ee257a24fb08 (diff) | |
download | faktura-f9b93c4bbb23b452551bd46ce86cc6e3602fd594.tar.gz faktura-f9b93c4bbb23b452551bd46ce86cc6e3602fd594.tar.bz2 faktura-f9b93c4bbb23b452551bd46ce86cc6e3602fd594.zip |
Begin web app frontend in PHP.main
While I'd like a command line client for retreiving information and
scripting stuff based on the db contents, a web app is convenient for
the less common stuff like adding and editing data.
The web app could also have been done in rust, however, I feel php is so
convenient for simple web stuff that I think it makes more sense this
way.
Diffstat (limited to 'web/include/api.php')
-rw-r--r-- | web/include/api.php | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/web/include/api.php b/web/include/api.php new file mode 100644 index 0000000..c13b15c --- /dev/null +++ b/web/include/api.php @@ -0,0 +1,31 @@ +<?php +/** + * Functions for intercting with the remote API. + * + * @package volse.faktura.web + */ + +namespace Faktura\API; + +define('API_URL', 'http://postgrest:3000'); + +function call(string $method, string $resource, mixed $data = null): string { + $ch = curl_init(); + curl_setopt($ch, CURLOPT_URL, API_URL . '/' . $resource); + curl_setopt($ch, CURLOPT_HEADER, 'Accept: application/json'); + curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 2); + curl_setopt($ch, CURLOPT_TIMEOUT, 5); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + + $result = curl_exec($ch); + + if ($result === false) { + echo curl_error($ch); + die(); + } + + curl_close($ch); + + return $result; +} + |