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.

Répondre

Vous devez être connecté pour envoyer un commentaire.