Data provider

Pour la version 2 du site relay.fr, nous avons mis en place un accès centralisé aux données, qui renvoie de l’xml.

Les url utilisées sont de la forme
?uri=home
?uri=structure
?uri=familles/feminins
?uri=article/8468

Les données sont en xml, utf-8, textes en cdata.

Le fichier index.php contient

require_once  (”config.req.php”);
require_once  (”Relay.class.php”);
$relay = new Relay();
$relay->sydb = $sydb; // couche d’abstraction base de données
$relay->main();

La classe Relay contient les propriétés / méthodes

$uri
main()
build()

main() récupère $_GET[”uri”] et la range dans $uri.
build() contient une série de cases :

switch ($first){
case “structure”:
require_once (”Structure.class.php”);
$structure   = new Structure($this->sydb);
$this->data    .= $structure->show($trail);
break;

case “home”:
require_once (”Home.class.php”);
$home    = new Home($this->sydb);
$this->data    .= $home->show($trail);
break;

case “livres”:
require_once (”Livres.class.php”);
$livres   = new Livres($this->sydb);
$this->data    .= $livres->show($trail);
break;

etc…

}

$first et $trail décomposent l’uri, $first et la première partie, $trail la suite.
Selon $first, on instancie une classe, et on lui laisse traiter $trail.

Comments are closed.