Vous consultez les articles de la catégorie Frameworks
Déc
7

Zend Framework : Aide de vue pour afficher les données issues d’un flux RSS

Voici une aide de vue Zend Framework qui vous permettra de lire les données provenant d’un flux RSS.
Pour cela nous allons utiliser la classe Zend_Feed_Reader

Voilà donc votre helper Rss.php situé dans votre dossier views/helpers/

<?php
 
class View_Helper_Rss extends Zend_View_Helper_Abstract
{
 
    public function rss($url)
    {
		$reader = new Zend_Feed_Reader();
    	        //Si vous avez besoin de passer par un proxy
		$config = array('proxy_host'=>'localhost','proxy_port'=>8080, 'proxy_user'=>'user', 'proxy_password'=>'password');
	    	   $adapter = new Zend_Http_Client_Adapter_Proxy();
		   $adapter->setConfig($config);
	    	   $reader->getHttpClient()->setAdapter($adapter);
 
 
    	try {
	    	$feed = $reader->import($url);
 
			$data = array(
			    'title'        => $feed->getTitle(),
			    'link'         => $feed->getLink(),
			    'dateModified' => $feed->getDateModified(),
			    'description'  => $feed->getDescription(),
			    'language'     => $feed->getLanguage(),
			    'entries'      => array(),
			);
 
			foreach ($feed as $entry) {
			    $edata = array(
			        'title'        => $entry->getTitle(),
			        'description'  => $entry->getDescription(),
			        'dateModified' => $entry->getDateModified(),
			        'authors'       => $entry->getAuthors(),
			        'link'         => $entry->getLink(),
			        'content'      => $entry->getContent()
			    );
			    $data['entries'][] = $edata;
			}
 
			return $data['entries'];
    	} catch (Zend_Exception $e) {
    		throw new Zend_Exception('Impossible de récupérer le flux RSS');
    	}
    }
 
}

Ensuite dans votre vue vous l’appelez avec en paramètre l’url du flux RSS à charger.

<?php 
      	//On va récupérer le flux rss du site du zéro par exemple	
            $urlRss = 'http://www.siteduzero.com/Templates/xml/tutoriels_fr.xml';
      		try {
      			$actusRss =  $this->rss($urlRss);	
      		} catch(Zend_Exception $e){
      			echo $e->getMessage();	
      		}
 
      		?>
<?php 
//Ensuite vous parcourez vos résultats avec un partialLoop par exemple
echo $this->partialLoop('front-commun/actuRss.phtml', $actusRss); ?>
Déc
6

Zend Framework : Aide d’action pour télécharger un fichier


Aujourd’hui nous allons voir comment réaliser une aide d’action (helper) en Zend Framework qui vous permettra le téléchargement direct d’un fichier (par défaut, un lien vers un fichier ouvrira le fichier dans le navigateur).

Pour cela nous allons créer un fichier Download.php dans votre dossier controllers/helpers

< ?php
class Controller_Helper_Download extends Zend_Controller_Action_Helper_Abstract 
{
	/**
	 * 
	 * Enter description here ...
	 */
	public function direct($dossier,$filename)
	{
		return $this->download($dossier,$filename);
	}
 
	  public function download($dossier,$filename)
    {
        $filepath = $dossier.DS.$filename;
    	$filesize = filesize($filepath);
        $filemd5 = md5_file($filepath);
 
        // Gestion du cache
        header('Pragma: public');
        header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
        header('Cache-Control: must-revalidate, pre-check=0, post-check=0, max-age=0');
        // Informations sur le contenu à envoyer
       // header('Content-Tranfer-Encoding: ' . $type . "\n");
        header('Content-Length: ' . $filesize);
        header('Content-MD5: ' . base64_encode($filemd5));
        header('Content-Type: application/force-download; name="' . $filename . '"');
        header('Content-Disposition: attachement; filename="' . $filename . '"');
        // Informations sur la réponse HTTP elle-même
        header('Date: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT');
        header('Expires: ' . gmdate('D, d M Y H:i:s', time() + 1) . ' GMT');
        header('Last-Modified: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT');
        readfile($filepath);
        exit;
    }
 
}

Lire la suite

Août
1

Symfony 2 : Erreur lors du premier lancement

Aujourd’hui j’ai voulu installer Symfony2 pour tester un peu. J’ai donc récupérer la version par défaut proposé sur le site, dézipper le bazar et je suis allé sur la première page

http://localhost/Symfony/web/app_dev.php

Et là, bam, première erreur PHP :

Fatal error: Class ‘Symfony\Component\DependencyInjection\Compiler\ResolveDefinitionTemplatesPass’ not found in …

Alors apparemment il s’agirait d’un bug dans la version .tgz qui ne contiendrait pas tous les fichiers, il suffit de prendre la version .zip à la place et tout rentre dans l’ordre, youpi !!

Edit : Pour ceux qui aurait l’erreur d’APC lors que vous allez sur le fichier web/config.php, il ne faut pas le prendre en compte car c’est un bug de Symfony. Tout fonctionne très bien sans APC

Sur ce, bon courage pour ceux qui commence à prendre en main ce framework!

Juil
28

Symfony 2 est sorti

Symfony2 est enfin sortie

Cela fait des mois que beaucoup de gens l’attendent, le voici enfin, Symfony 2 en version finale !

Il apporte avec lui son petit lot de nouveauté par rapport à Symfony 1.

  • Utilisation des namespaces et des particularités de PHP 5.3
  • Intégration de Doctrine 2
  • Arrivée des bundles
  • Utilisation de Twig comme moteur de template
  • Optimisation du code (suppression des methodes magiques PHP gourmandes en ressources)
  • Nouveau composant de gestion de formulaires
  • et certainement d’autres choses

Lire la suite

Juil
7

Convertir une page HTML en PDF avec ZendParadoxPDF

Paradox PDF, conversion de fichier HTML en PDF

ZendParadoxPDF est un plugin Zend qui permet de générer à la volée un PDF à partir d’une page HTML. C’est à la base un plugin EZ Publish que j’avais déjà eu l’occasion d’utiliser et dont j’avais été très satisfait.

Pour cela, il faut avoir Java d’installé sur son serveur car le script appel un fichier JAR qui s’occupe de la génération PDF.

Mise à part cette petite contrainte, ce générateur est plutôt efficace par rapport à d’autres dans la mesure où il supporte assez bien le CSS et notamment l’attribut « float », ce qui évite d’avoir à refaire une vue spécifique avec une mise en page avec des tableaux . Pour générer un PDF, il suffit d’avoir un fichier XHTML valide.

Lire la suite

Mar
21

CodeIgniter 2.0 : Etendre la classe Controller

En ce moment, au boulot, nous nous sommes fixé comme objectif de tester différents frameworks pour choisir celui que nous adopterons par la suite.

Je suis donc en train de faire quelques tests très basiques sur CodeIgniter 2.0, et je viens de rencontrer une petite difficulté en voulant étendre la classe Controller du Core. Cette petite note pourra peut-être aider quelques étourdis comme moi. Lire la suite

Fév
15

Gérer les schémas Postgresql dans Doctrine

Gérer les schemas Postgres avec Doctrine
Après avoir passé pas mal de temps à chercher (notamment en cherchant du coté des DSN de PDO), j’ai enfin trouver une solution simple pour prendre en compte les schémas (autre que public) dans Postgresql avec Doctrine.

Pour cela il vous suffit d’ajouter une ligne de code dans votre fichier où vous initialisez votre connexion

  $options = $this->getOptions();
  $conn = Doctrine_Manager::connection($options['dsn'], 'doctrine');
      	if (isset($options['schema'])) {
      		$conn->execute(sprintf('SET search_path TO %s;', $options['schema']));
      	}

Lire la suite

Jan
31

Modifier les Contrôleurs dans Yii

Voici la traduction en français du dernier des 8 articles de la série de Larry Ullman Learning the Yii Framework. Vous pouvez trouver la version originale de l’article sur le site de l’auteur : Basic Controller Edits in Yii.

Après avoir utilisé les outils en ligne de commande de Yii ainsi que l’outil Gii pour construire les bases d’une application, et après avoir modifié les Modèles et les fonctionnalités de CRUD, il reste encore un peu de modifications à apporter (même si Yii effectue réellement une large partie du travail). Les articles précédents ont abordé la modification des Modèles et des Vues. Nous allons ici traiter des Contrôleurs. J’ai remarqué que j’apporte beaucoup moins de modifications à mes Contrôleurs auto-générés qu’à mes Modèles ou mes Vues. Ceci est assez logique, puisque le Modèle contient l’essentiel du code et que la Vue est l’interface que voit l’utilisateur, tandis que le Contrôleur est avant tout un intermédiaire entre les deux (voir à ce propos ma série sur le MVC [en] pour en apprendre davantage).

Lire la suite

Jan
30

Modifier les Vues dans Yii

Modifier les Vues dans Yii

Voici le septième épisode de cette série Apprendre le Framework Yii, traduction de la série d’articles écrits par Larry Ullman il y a quelques mois. Vous pouvez trouver l’article original en anglais sur le site de l’auteur : Basic View Edits in Yii. Comme d’habitude, à partir de maintenant, c’est Larry qui parle…

Dans ce septième article, je vous propose de modifier un peu les fichiers générés automatiquement par le framework Yii. J’utiliserais comme dans les articles précédents l’exemple des employés et des services à titre d’illustration. Reportez-vous aux articles précédents pour plus d’informations au sujet de cet exemple.

Lire la suite

Jan
30

Modifier les Modèles dans Yii

Author Nico    Category Frameworks, PHP     Tags , ,

Modifier les Modèles dans Yii

Nous voici à nouveau ensemble pour la traduction en français du sixième épisode de la série Learning the Yii Framework de Larry Ullman. Vous pouvez trouver l’article original en anglais sur le site de l’auteur : Basic Model Edits in Yii.

Je ne reviens pas sur le contenu des articles précédents. Vous retrouverez les liens vers l’ensemble des articles de la série dans le bandeau, à droite de cet article.

Cet article présente les modifications que vous pourrez apporter aux Modèles après leur génération automatique par les outils en ligne de commande de Yii. Ceci constituera une bonne introduction au concept de Modèle dans Yii. Comme précédemment, j’utiliserai l’exemple des employé et des services pour illustrer ces notions.

Lire la suite

Edito

Bienvenue sur Mémorandom.

Mémorandom est le blog de 2 développeurs web, Appo et Nico.

Vous y trouverez des informations sur différents domaines touchant de près ou de loin au développement web

Tutoriels Yii Framework

Nos derniers articles

Blogs Dev

Liens

Étiquettes