$ROLE = "ADMINISTRATOR"; try { include "svc/{$service}.php"; } catch (Exception $e) { echo "<pre>"; echo $e->getMessage(); echo "</pre>\n"; $fatal = 'SYNTAX'; } echo "<pre>SERVER:"; print_r($_SERVER); echo "</pre>"; $fatal = ''; if (hasRole($ROLE)) { try { $output = execService($input, new System()); } catch (Exception $e) { $msg = $e->getMessage(); echo "<pre>{$msg}</pre>\n"; if (substr($msg, 0, 1) == '!') { $fatal = $msg; } else { $fatal = 'ERROR'; } } } else { // Pas de droits. Role insuffisant. $fatal = '!' . $ROLE; } // Fermer la connexion à la base de données. $DB = null;
break; } */ $output = array(); // Déclarer les objets d'accès aux donées publiques et privées. // Inclure le code du service qui doit fournir une fonction execService(). // Il doit aussi redéfinir la variable $ROLE qui donne le role nécessaire // à l'appel de ce service. Si $ROLE est vide, tout le monde est autorisé. $ROLE = microtime(); // Random role for security reason. include "svc/{$service}.php"; $json = "null"; $user = new User(); if ($user->hasRole($ROLE)) { try { $json = json_encode(execService($input, $user)); } catch (FatalException $e) { $json = "#" + json_encode(array("id" => $e->getCode(), "msg" => $e->getMessage())); } catch (Exception $e) { echo "<pre>"; echo $e->getMessage(); echo "</pre>\n"; $json = "#null"; } } else { $json = "!" . json_encode($ROLE); } // Fermer la connexion à la base de données. $DB = null; echo "<hr/>\n"; echo $json;