Zend Framework (ZF) : un livre d’or, troisième étapes : Bases des fichiers

Créations d’un livre d’or en 6 étapes

  1. Définition
  2. Créations des tables sql et des répertoires
  3. Bases des fichiers
  4. Affichages et ajout de messages
  5. Modification et suppression des messages
  6. Conclusions

Bases des fichiers

Avant tout, il nous faut créer les différents fichier .htaccess

 RewriteEngine on #RewriteBase /serveur/mon_repertoire/ RewriteRule .* index.php php_flag magic_quotes_gpc off php_flag register_globals off

La ligne en commentaire, permet dans le cas d’une erreur de ce type : Fatal error: Uncaught exception ‘Zend_Controller_Dispatcher_Exception’ with message ‘Invalid controller specified (serveur)’ in de corriger le problème, pour un accès, par exemple, via : http://localhost/serveur/mon_repertoire/

LivreControllers.php

 <?php /** Zend_Controller_Action */ require_once 'Zend/Controller/Action.php'; class LivreController extends Zend_Controller_Action { 	public function indexAction() 	{ 		echo 'Index du livre d\'or'; 		return; 	} 	public function ajouterAction() 	{ 		$this->view->title .= ' .: Ajout d\'un message'; 		echo 'ajout d\'un message!'; 		return; 	} }

Le controlleur, c’est ce qui va diriger notre application

index.php

 <?php error_reporting(E_ALL|E_STRICT); date_default_timezone_set('Europe/Brussels'); set_include_path('.' . PATH_SEPARATOR . '../site/lib' . PATH_SEPARATOR . './app/models/'  . PATH_SEPARATOR . get_include_path()); include 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Controller_Front'); Zend_Loader::loadClass('Zend_Config_Ini'); Zend_Loader::loadClass('Zend_Registry'); Zend_Loader::loadClass('Zend_Db'); // load configuration $config = new Zend_Config_Ini('./app/config.ini', 'general'); $registry = Zend_Registry::getInstance(); $registry->set('config', $config); // setup database $db = Zend_Db::factory($config->db->adapter,  $config->db->config->toArray()); Zend_Db_Table::setDefaultAdapter($db); // Régler le dossier des contrôleurs par défaut : $frontController = Zend_Controller_Front::getInstance(); $frontController->throwExceptions(true); $frontController->setControllerDirectory('./app/controllers'); // run! $frontController->dispatch();

Livre.php

 <?php Zend_Loader::loadClass('Zend_Db_Table'); class Livre extends Zend_Db_Table {     protected $_name = 'livre';     protected $_primary = 'id'; 	public function insertObject($object) 	{ 		return parent::insert((array) $object); 	} 	public function updateObject($object, $where) 	{ 		return $this->update((array) $object, $where); 	} }

Le modèle du livre, c’est-à-dire les données -> ici la base des données.

Date.php

 <?php class MyWsp_View_Helper_Date { 	/** 	 * Retourne une date sous forme d'une chaîne, au format donné par le 	 * paramètre format, fournie par le paramètre timestamp ou la date et 	 * l'heure courantes si aucun timestamp n'est fourni. En d'autres termes, 	 * le paramètre timestamp est optionnel et vaut par défaut la valeur de la 	 * fonction time(). 	 * Plus d'info sur http://www.php.net/manual/fr/function.date.php 	 * 	 * @param string $format format de la date 	 * @param int $timestampdate à formaté 	 * 	 * @return string 	 */ 	public function date($format, $timestamp = null) 	{ 		if (!is_nan($timestamp)) 			$timestamp = time(); 		// see http://www.php.net/manual/fr/function.strftime.php 		$dates = array( 			'DDDD'	=> '%A', 			'DDD'	=> '%a', 			'DD'	=> '%d', 			'D'		=> '%e', 			'MMMM'	=> '%B', 			'MMM'	=> '%b', 			'MM'	=> '%m', 			'YYYY'	=> '%Y', 			'YY'	=> '%y', 			'HH'	=> '%H', 			'hh'	=> '%I', 			'mm'	=> '%M', 			'ss'	=> '%S', 		); 		return strftime(str_replace(array_keys($dates), array_values($dates), $format), $timestamp); 	} }

config.ini

 [general] db.adapter = PDO_MYSQL db.config.host = localhost db.config.username = root db.config.password = db.config.dbname = livredor

Contient la configuration pour accéder à la base de donnée du livre d’or.

Test

Rendez-vous à l’adresse de votre script :

  • Lire les messages : http://localhost/serveur/mon_repertoire/livre/
  • Ajouter un message : http://localhost/serveur/mon_repertoire/livre/ajouter/

Si tout est ok, passons à la suite!

Similar Posts:

    None Found

3 thoughts on “Zend Framework (ZF) : un livre d’or, troisième étapes : Bases des fichiers

Comments are closed.