<?xml version="1.0" encoding="UTF-8" ?>
<feed xmlns="http://purl.org/atom/ns#" version="0.3"
	  xmlns:dc="http://purl.org/dc/elements/1.1/"
	  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	  xml:lang="fr">

  <title>CactusCrew Developpement Web</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/"/>
  <tagline type="text/plain" mode="escaped">Developpement Web Nouvelles technologies</tagline>
  
  <modified>2008-04-09T15:52:22+02:00</modified>
  <generator version="1.2.3" url="http://www.dotclear.net/">DotClear</generator>
  
  <sy:updatePeriod>daily</sy:updatePeriod>
  <sy:updateFrequency>1</sy:updateFrequency>
  <sy:updateBase>2008-04-09T15:52:22+02:00</sy:updateBase>
  
<entry xml:lang="fr">
  <title>IntÃ©gration de FCKeditor dans HTML_QuickForm</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/124-integration-de-fckeditor-dans-html_quickform" />
  <issued>2008-04-09T15:52:22+02:00</issued>
  <modified>2008-04-09T15:52:22+02:00</modified>
  <id>http://www.blog.cactuscrew.com/124-integration-de-fckeditor-dans-html_quickform</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>PEAR</dc:subject>
  <summary>J'ai crÃ©Ã© une classe prÃªte Ã  l'emploi pour utiliser l'Ã©diteur FCKeditor en tant qu'Ã©lÃ©ment de formulaire HTML_QuickForm.</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;J'ai crÃ©Ã© une classe prÃªte Ã  l'emploi pour utiliser l'Ã©diteur FCKeditor en tant qu'Ã©lÃ©ment de formulaire HTML_QuickForm.&lt;/p&gt; &lt;h5&gt;PrÃ©-requis&lt;/h5&gt;

&lt;p&gt;Il vous faudra une version PHP supÃ©rieure Ã  5.1.1, &lt;a href=&quot;http://www.fckeditor.net/download&quot; hreflang=&quot;fr&quot;&gt;FCKeditor 2.6 ou supÃ©rieur&lt;/a&gt;, et HTML_QuickForm.&lt;br /&gt;
&lt;br /&gt;
Pour utiliser cette classe, vous devez donc tÃ©lÃ©charger &lt;a href=&quot;http://www.fckeditor.net/download&quot; hreflang=&quot;fr&quot;&gt;FCKeditor 2.6&lt;/a&gt;, et le placer dans un rÃ©pertoire de l'arborescence web de votre appli &lt;code&gt;/home/tagada/www/FCKeditor&lt;/code&gt;, et sera donc accessible depuis &lt;code&gt;http://www.tagada.com/FCKeditor&lt;/code&gt;.&lt;/p&gt;

&lt;h5&gt;La classe HTML_QuickForm_FCKeditor&lt;/h5&gt;

&lt;p&gt;///geshi php
&amp;lt;?php
require_once 'HTML/QuickForm/element.php';
class HTML_QuickForm_FCKeditor extends HTML_QuickForm_element {

/**
* FCKeditor
*
* @var FCKeditor
*/
private $O_FCKEditor	= null;&lt;/p&gt;


&lt;p&gt;/**
* valeur, contenu du FCK
*
* @var string
*/
private $S_value		= '';


/**
* Constructeur
*
* @param string $S_name
* @param string $S_label
* @param array $A_attributes
*/
public function __construct($S_name = 'FCKeditor', $S_label = '', $A_attributes = array()) {
// si la classe FCKeditor n'est pas chargÃ©e
if (!class_exists('FCKeditor')) {
throw new Exception('you must include fckeditor.php');

}
// appel du constructeur parent
parent::HTML_QuickForm_element($S_name, $S_label, $A_attributes);
$this-&amp;gt;_persistantFreeze = false;
$this-&amp;gt;_type = '';&lt;/p&gt;

&lt;pre&gt;&lt;/pre&gt;

&lt;p&gt;// creation du fckeditor;
$this-&amp;gt;O_FCKEditor	= new FCKeditor($S_name);
$this-&amp;gt;setBasePath();
$this-&amp;gt;setWidth(	600);
$this-&amp;gt;setHeight(	400);

}

/**
* Applique le nom qui va bien
*
* @param string $S_name
*/
public function setName($S_name) {&lt;/p&gt;

&lt;pre&gt;       $this-&amp;gt;updateAttributes(array('name' =&amp;gt; $S_name));
       
   }
   
   /**
    * Retourne le nom qui va bien aussi
    *
    * @return string
    */
   public function getName() {
       return $this-&amp;gt;getAttribute('name');
       
   }&lt;/pre&gt;

&lt;p&gt;
/**
* Set the web base path
*
* @param string $S_path
* @return Toodate_HTML_QuickForm_FCKeditor
*/
public function setBasePath($S_path = '/FCKeditor/') {
$this-&amp;gt;O_FCKEditor-&amp;gt;BasePath =	$S_path;
return $this;

}

/**
* Set value
*
* @param string $S_value
*/
public function setValue($S_value) {
$this-&amp;gt;S_value	= $S_value;
$this-&amp;gt;O_FCKEditor-&amp;gt;Value = $S_value;

}

/**
* getValue
*
* @return string
*/
public function getValue() {
return $this-&amp;gt;S_value;

}

/**
* Applique la hauteur
*
* @param int $I_height
* @return Toodate_HTML_QuickForm_FCKeditor
*/
public function setHeight($I_height) {
$this-&amp;gt;O_FCKEditor-&amp;gt;Height	= $I_height;
return $this;

}

/**
* Applique la largeur
*
* @param int $I_width
* @return Toodate_HTML_QuickForm_FCKeditor
*/
public function setWidth($I_width) {
$this-&amp;gt;O_FCKEditor-&amp;gt;Width	= $I_width;
return $this;

}

/**
* Set the toobar set
*
* @param string $S_toolbarSet
* @return Toodate_HTML_QuickForm_FCKeditor
*/
public function setToolbarSet($S_toolbarSet) {
$this-&amp;gt;O_FCKEditor-&amp;gt;ToolbarSet = $S_toolbarSet;
return $this;

}

/**
* Set la config
*
* @param string $S_name
* @param string $S_value
*/
public function addConfig($S_name, $S_value) {
$this-&amp;gt;O_FCKEditor-&amp;gt;Config&lt;a href=&quot;$S_name&quot;&gt;$S_name&lt;/a&gt;	= $S_value;

}

/**
* Retourne la config
*
* @return array
*/
public function getConfig() {
return $this-&amp;gt;O_FCKEditor-&amp;gt;Config;

}

/**
* retourne le html qui va bien
*
* @return string
*/
public function toHtml() {
ob_start();
$this-&amp;gt;O_FCKEditor-&amp;gt;Create();
$S_html	= ob_get_contents();
ob_end_clean();
return $S_html;

}

}&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>Envoyer des mails avec son compte Gmail</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/122-envoyer-des-mails-avec-son-compte-gmail" />
  <issued>2008-03-04T12:38:04+01:00</issued>
  <modified>2008-03-04T12:38:04+01:00</modified>
  <id>http://www.blog.cactuscrew.com/122-envoyer-des-mails-avec-son-compte-gmail</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>PHP</dc:subject>
  <summary>BasÃ©e sur la classe PHPMailer, voici une solution permettant d'envoyer des mail en php, via le smtp de son compte Gmail, et mÃªme son compte Google Apps.</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;BasÃ©e sur la classe PHPMailer, voici une solution permettant d'envoyer des mail en php, via le smtp de son compte Gmail, et mÃªme son compte Google Apps.&lt;/p&gt; &lt;h5&gt;PHPMailer&lt;/h5&gt;

&lt;p&gt;Est une classe PHP d'envoi de mail open source disponible &lt;a href=&quot;http://phpmailer.codeworxtech.com&quot; hreflang=&quot;en&quot;&gt;ici&lt;/a&gt;. Je recommande la version 2.0.&lt;/p&gt;

&lt;h5&gt;Classe GoogleMailer&lt;/h5&gt;
&lt;pre&gt;&lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;a href=&quot;http://www.php.net/dirname&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;dirname&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;__FILE__&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/class.phpmailer.php&quot;&lt;/span&gt;;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;class&lt;/span&gt; GoogleMailer extends PHPMailer &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
	
	&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**
	 * Constructeur
	 *
	 */&lt;/span&gt;
	public &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; __construct&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// on passe en mode SMTP&lt;/span&gt;
		parent::&lt;span style=&quot;color: #006600;&quot;&gt;IsSMTP&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// on utilise l'authentification&lt;/span&gt;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;SMTPAuth&lt;/span&gt;	= &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;true&lt;/span&gt;;
		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// on indique le chemin du stmp, en ssl&lt;/span&gt;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;Host&lt;/span&gt;		= &lt;span style=&quot;color: #ff0000;&quot;&gt;'ssl://smtp.gmail.com'&lt;/span&gt;;
		&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// indication du num&amp;Atilde;&amp;copy;ro de port&lt;/span&gt;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;Port&lt;/span&gt;		= &lt;span style=&quot;color: #cc66cc;&quot;&gt;465&lt;/span&gt;;
		
	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
	
	&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**
	 * Applique le nom d'utilisateur Gmail
	 *
	 * @param string 	$S_login	login gmail, adresse mail complete (tagada@gmail.com)
	 * @param string 	$S_FromName	nom de l'emetteur
	 */&lt;/span&gt;
	public &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; setUsername&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_login&lt;/span&gt;, &lt;span style=&quot;color: #0000ff;&quot;&gt;$S_FromName&lt;/span&gt; = &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;Username&lt;/span&gt;	= &lt;span style=&quot;color: #0000ff;&quot;&gt;$S_login&lt;/span&gt;;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;From&lt;/span&gt;		= &lt;span style=&quot;color: #0000ff;&quot;&gt;$S_login&lt;/span&gt;;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;FromName&lt;/span&gt;	= &lt;span style=&quot;color: #0000ff;&quot;&gt;$S_FromName&lt;/span&gt;;
		
	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
	
	&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**
	 * applique le mot de passe du compte gmail
	 *
	 * @param string $S_password
	 */&lt;/span&gt;
	public &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; setPassword&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_password&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;Password&lt;/span&gt;	= &lt;span style=&quot;color: #0000ff;&quot;&gt;$S_password&lt;/span&gt;;
		
	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
	
	&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**
	 * Redefinition du send pour renvoyer une exception en cas d'erreur
	 *
	 * @return bool
	 */&lt;/span&gt;
	public &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; Send&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
		&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;!parent::&lt;span style=&quot;color: #006600;&quot;&gt;Send&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
			throw &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; Exception&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;ErrorInfo&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
			
		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
		&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;true&lt;/span&gt;;
		
	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
	
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;

&lt;h5&gt;Utilisation&lt;/h5&gt;

&lt;p&gt;On peut Ã©tendre la classe &lt;em&gt;GoogleMailer&lt;/em&gt; pour crÃ©er sa classe perso &lt;em&gt;MonGmailer&lt;/em&gt; qu'on utilisera sur toute notre appli&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;class&lt;/span&gt; MonGmailer extends GoogleMailer &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
	
	&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**
	 * constructeur
	 *
	 */&lt;/span&gt;
	public &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; __construct&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
		parent::__construct&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
		parent::&lt;span style=&quot;color: #006600;&quot;&gt;setUsername&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'tagada@gmail.com'&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'Pierre DUPOND'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
		parent::&lt;span style=&quot;color: #006600;&quot;&gt;setPassword&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'monmotdepasse'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
		
	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
	
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;Envoi du mail Ã  proprement parler&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;&amp;nbsp;
try &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_mail&lt;/span&gt;	= &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; MonGmailer&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_mail&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;AddAddress&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'destinataire@domaine.com'&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'Jean MARTIN'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_mail&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;SetLanguage&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'en'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_mail&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;IsHTML&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_mail&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;Subject&lt;/span&gt;	= &lt;span style=&quot;color: #ff0000;&quot;&gt;'test'&lt;/span&gt;;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_mail&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;Body&lt;/span&gt;		= &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;&amp;lt;h1&amp;gt;Hello wolrd&amp;lt;/h1&amp;gt;&quot;&lt;/span&gt;;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_mail&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;AltBody&lt;/span&gt;	= &lt;span style=&quot;color: #ff0000;&quot;&gt;'Hello World'&lt;/span&gt;;
	
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_mail&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;Send&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
	&lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'OK !'&lt;/span&gt;;
	
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt; catch &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;Exception &lt;span style=&quot;color: #0000ff;&quot;&gt;$O_fault&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
	&lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$O_fault&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;getMessage&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;Et voila ;) have fun&amp;nbsp;!&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>Erreur 1030 : Got error 134 from storage engine</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/120-erreur-1030-got-error-134-from-storage-engine" />
  <issued>2008-01-30T10:14:58+01:00</issued>
  <modified>2008-01-30T10:14:58+01:00</modified>
  <id>http://www.blog.cactuscrew.com/120-erreur-1030-got-error-134-from-storage-engine</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>MySQL</dc:subject>
  <summary>S'il vous arrive ce genre de message, pas de panique, voici la solution</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;S'il vous arrive ce genre de message, pas de panique, voici la solution&lt;/p&gt; &lt;p&gt;En rÃ¨gle gÃ©nÃ©rale, cette erreur se produit sur les &lt;code&gt;SELECT&lt;/code&gt; effectuÃ©s sur certaines tables MyISAM.&lt;br /&gt;
CelÃ  vient du fait que la strcuture physique de la table est endomagÃ©e, pour une raison X ou Y.&lt;br /&gt;
&lt;img src=&quot;http://blog.ndreams.org/blog/images/Posts/mysql_logo.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h5&gt;Solution&lt;/h5&gt;

&lt;p&gt;Un simple &lt;code&gt;REPAIR&lt;/code&gt; des tables en erreur resoudra le problÃ¨me.&lt;/p&gt;
&lt;pre&gt;REPAIR TABLE tbl_name QUICK;
&lt;/pre&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>Valeurs par dÃ©faut d'un Hierselect</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/119-valeurs-par-defaut-d-un-hierselect" />
  <issued>2007-11-06T16:19:10+01:00</issued>
  <modified>2007-11-06T16:19:10+01:00</modified>
  <id>http://www.blog.cactuscrew.com/119-valeurs-par-defaut-d-un-hierselect</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>PEAR</dc:subject>
  <summary>Et oui, comment fait-on pour appliquer les valeurs par dÃ©faut d'un hierselectÂ ?</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Et oui, comment fait-on pour appliquer les valeurs par dÃ©faut d'un hierselect&amp;nbsp;?&lt;/p&gt; &lt;p&gt;Soit un hierselect &lt;em&gt;liste&lt;/em&gt; composÃ© de 3 selects. (voir &lt;a href=&quot;http://www.blog.cactuscrew.com/25-hieselect-multiple.html&quot; hreflang=&quot;fr&quot;&gt;ici&lt;/a&gt;)&lt;br /&gt;
Voici comment appliquer les valeurs par dÃ©faut de chacun des select&amp;nbsp;: (voir le code complet plus bas)&lt;/p&gt;
&lt;pre&gt;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// --- valeurs par defaut&lt;/span&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;	= &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'liste'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'liste'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #cc66cc;&quot;&gt;21&lt;/span&gt;;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'liste'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_form&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;setDefaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/pre&gt;


&lt;h5&gt;Resultat&amp;nbsp;:&lt;/h5&gt;

&lt;p&gt;&lt;img src=&quot;/images/hierselect/hierselect.PNG&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;


&lt;h5&gt;Code complet&lt;/h5&gt;
&lt;pre&gt;&lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'HTML/QuickForm.php'&lt;/span&gt;;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_form&lt;/span&gt;	= &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; HTML_QuickForm&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_form&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;addElement&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'header'&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'untitre'&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'Liste des prets'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// --- Tableaux des options du 1er select&lt;/span&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_option1&lt;/span&gt;	= &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Livre'&lt;/span&gt;, 
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'DVD'&lt;/span&gt;, 
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Jeux'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// --- Tableaux des options du 2eme select&lt;/span&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_option2&lt;/span&gt;	= &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;69&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Stephen KING'&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;51&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Jules VERNES'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;17&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Peter JACKSON'&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;21&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Steven SPIELBERG'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;312&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'FPS'&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;78&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Autre'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;
				&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// --- Tableaux des options du 3eme select&lt;/span&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_option3&lt;/span&gt;	= &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;69&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Le fl&amp;Atilde;ƒ&amp;Acirc;&amp;copy;au'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Tempete'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;51&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Le tour du monde en 80 jours'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'L&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\'&lt;/span&gt;ile myst&amp;Atilde;ƒ&amp;Acirc;&amp;copy;rieuse'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;
					&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;17&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Le seigneur des anneaux'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'King Kong'&lt;/span&gt;
					&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;21&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'E.T.'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'La guerre des mondes'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,
					&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,
				&lt;span style=&quot;color: #cc66cc;&quot;&gt;3&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;312&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Half Life'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'FEAR'&lt;/span&gt;
					&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;,
					&lt;span style=&quot;color: #cc66cc;&quot;&gt;78&lt;/span&gt; =&amp;gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Selectionner'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'NFS'&lt;/span&gt;,
						&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'TrackMania'&lt;/span&gt;
					&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;
				&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;
			&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
		
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// --- creer l'element QuickFrom&lt;/span&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_hierselect&lt;/span&gt;	= &lt;span style=&quot;color: #0000ff;&quot;&gt;$O_form&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;createElement&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'hierselect'&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'liste'&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'Liste'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// --- Ajoute les tablmeaux d'options&lt;/span&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_hierselect&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;setOptions&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_option1&lt;/span&gt;, &lt;span style=&quot;color: #0000ff;&quot;&gt;$A_option2&lt;/span&gt;, &lt;span style=&quot;color: #0000ff;&quot;&gt;$A_option3&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// --- Ajoute l'element dans le formulaire&lt;/span&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_form&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;addElement&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_hierselect&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// --- valeurs par defaut&lt;/span&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;	= &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'liste'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'liste'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #cc66cc;&quot;&gt;21&lt;/span&gt;;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'liste'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #cc66cc;&quot;&gt;1&lt;/span&gt;;
&amp;nbsp;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_form&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;setDefaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_defaults&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
&lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$O_form&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;toHtml&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/pre&gt;

&lt;h5&gt;C'est Ã  &lt;a href=&quot;http://www.crapulescorp.net/&quot; hreflang=&quot;fr&quot;&gt;BÃ©ryl&lt;/a&gt; qu'il faut dire merci ;)&lt;/h5&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>Groupe d'HTML_Quickform_advcheckbox</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/118-groupe-d-html_quickform_advcheckbox" />
  <issued>2007-10-18T16:29:16+02:00</issued>
  <modified>2007-10-18T16:29:16+02:00</modified>
  <id>http://www.blog.cactuscrew.com/118-groupe-d-html_quickform_advcheckbox</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>PEAR</dc:subject>
  <summary>CrÃ©er un groupe de cases Ã  cochÃ© avancÃ©es.</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;CrÃ©er un groupe de cases Ã  cochÃ© avancÃ©es.&lt;/p&gt; &lt;p&gt;C'est facile, il suffit d'utiliser les Ã©lements advcheckbox standard (voir &lt;a href=&quot;http://blog.cactuscrew.com/21-gerer-plus-facilement-les-checkboxes-avec-html_quickform_advcheckbox.html&quot; hreflang=&quot;fr&quot;&gt;ici&lt;/a&gt;), pour crÃ©er un groupe tout ce qu'il y a de plus ordinaire.&lt;br /&gt;
Mais la rÃ¨gle Ã  ne pas oublier, c'est de mettre le nom de l'Ã©lÃ©ment Ã  vide, et pas a null, comme par dÃ©faut.&lt;/p&gt;
&lt;pre&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_sorbets&lt;/span&gt;		= &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
&amp;nbsp;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_sorbets&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; HTML_QuickForm_advcheckbox&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
	&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'citron'&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'citron'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_sorbets&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; HTML_QuickForm_advcheckbox&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
	&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'fraise'&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'fraise'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_sorbets&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; HTML_QuickForm_advcheckbox&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
	&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'framboise'&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'framboise'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_sorbets&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; HTML_QuickForm_advcheckbox&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
	&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'melon'&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'melon'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_sorbets&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;	= &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; HTML_QuickForm_advcheckbox&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
	&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'fruit de la passion'&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;, &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'passion'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
&amp;nbsp;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$O_form&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;addGroup&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_sorbets&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'sorbets'&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;J'aime les sorbets&quot;&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;&amp;lt;br/&amp;gt;&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;, &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/pre&gt;

&lt;p&gt;Ce qui donne ceci :&lt;br /&gt;
&lt;img src=&quot;/images/checkbox/advcheck.PNG&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
Et voila&amp;nbsp;!&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>Autoload, Ã  utiliser avec parcimonie</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/117-autoload-a-utiliser-avec-parcimonie" />
  <issued>2007-09-06T14:19:58+02:00</issued>
  <modified>2007-09-06T14:19:58+02:00</modified>
  <id>http://www.blog.cactuscrew.com/117-autoload-a-utiliser-avec-parcimonie</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>PHP</dc:subject>
  <summary>La mÃ©thode __autoload permet de s'Ã©pargner d'Ã©crire les require de chaque classe utilisÃ©es dans une appli.</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;La mÃ©thode __autoload permet de s'Ã©pargner d'Ã©crire les require de chaque classe utilisÃ©es dans une appli.&lt;/p&gt; &lt;h5&gt;Avantages&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;On gagne en temps de dÃ©veloppement Ã  ne plus taper les require et autres include.&lt;/li&gt;
&lt;li&gt;... heu j'en vois pas d'autres&lt;/li&gt;
&lt;/ul&gt;
&lt;h5&gt;InconvÃ©niant&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;L'autoload alourdi l'exÃ©cution du code...&lt;/li&gt;
&lt;/ul&gt;
&lt;h5&gt;Mon astuce&lt;/h5&gt;

&lt;p&gt;Combiner le gain de temps lors du dÃ©veloppement, avec autoload, avec les meilleures performances d'un bÃªte require.&lt;br /&gt;
Cet autoload gÃ©nÃ©re un Notice, qui m'indique Ã  quel endroit nous avons de la classe Ã  charger aussi le require &quot;pret Ã  coller&quot; qui va bien.&lt;br /&gt;
Je n'ai plus qu'a copier/coller le require Ã  l'endroit indiquÃ©.&lt;/p&gt;

&lt;h5&gt;Le code de mon autoload&lt;/h5&gt;
&lt;pre&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;?php&lt;/span&gt;
&lt;span style=&quot;color: #b1b100;&quot;&gt;require&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'Zend/Loader.php'&lt;/span&gt;;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; __autoload&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_className&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_backTrace&lt;/span&gt;	= &lt;a href=&quot;http://www.php.net/debug_backtrace&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;debug_backtrace&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_message&lt;/span&gt;		= &lt;span style=&quot;color: #ff0000;&quot;&gt;'Autoload class '&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_className&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;' : &amp;lt;br/&amp;gt;'&lt;/span&gt;;
	&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_message&lt;/span&gt;		.= &lt;span style=&quot;color: #ff0000;&quot;&gt;'&amp;lt;strong&amp;gt; require &lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\'&lt;/span&gt;'&lt;/span&gt;.str_replace&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'_'&lt;/span&gt;, DIRECTORY_SEPARATOR, &lt;span style=&quot;color: #0000ff;&quot;&gt;$S_className&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;'.php&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\'&lt;/span&gt;;&amp;lt;/strong&amp;gt;&amp;lt;br/&amp;gt;'&lt;/span&gt;;
	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/isset&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;isset&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_backTrace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'file'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_message&lt;/span&gt;		.= &lt;span style=&quot;color: #ff0000;&quot;&gt;'dans le fichier '&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_backTrace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'file'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;.&lt;span style=&quot;color: #ff0000;&quot;&gt;' &amp;Atilde;&amp;nbsp; la ligne '&lt;/span&gt;.&lt;span style=&quot;color: #0000ff;&quot;&gt;$A_backTrace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span style=&quot;color: #cc66cc;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'line'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;;
		
	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
	&lt;a href=&quot;http://www.php.net/trigger_error&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;trigger_error&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_message&lt;/span&gt;, &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;E_USER_NOTICE&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	
	Zend_Loader::&lt;span style=&quot;color: #006600;&quot;&gt;loadClass&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$S_className&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/pre&gt;


&lt;h5&gt;Exemple de code pendant le dÃ©veloppement&lt;/h5&gt;
&lt;pre&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;?php&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;class&lt;/span&gt; Form_Inscription extends HTML_QuickForm &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
&amp;nbsp;
	public &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; __construct&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;addElement&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;	
			&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; HTML_QuickForm_header&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
				&lt;span style=&quot;color: #ff0000;&quot;&gt;'titre'&lt;/span&gt;, 
				Zend_Registry::&lt;span style=&quot;color: #006600;&quot;&gt;get&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'trad'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;-&amp;gt;_&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;Inscription&quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;
			&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;
		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;h5&gt;Notice&lt;/h5&gt;

&lt;p&gt;&lt;img src=&quot;/images/autoload.PNG&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h5&gt;Code &quot;finalisÃ©&quot;&lt;/h5&gt;
&lt;pre&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;?php&lt;/span&gt;
&lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'HTML/QuickForm.php'&lt;/span&gt;;
&lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'HTML/QuickForm/header.php'&lt;/span&gt;;
&amp;nbsp;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;class&lt;/span&gt; Form_Inscription extends HTML_QuickForm &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
&amp;nbsp;
	public &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; __construct&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;
		&lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;addElement&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;	
			&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; HTML_QuickForm_header&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;
				&lt;span style=&quot;color: #ff0000;&quot;&gt;'titre'&lt;/span&gt;, 
				Zend_Registry::&lt;span style=&quot;color: #006600;&quot;&gt;get&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'trad'&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;-&amp;gt;_&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;Inscription&quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;
			&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;
		&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;
	&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;h5&gt;Conclusion&lt;/h5&gt;

&lt;p&gt;On pourrait imaginer ecrire automatiquent le require au bon endroit, dans le bon fichier... mais bon, Ã§a reprÃ©sente peut Ãªtre autant d'interÃªt que de tirer du canon pour tuer un moustique. ;)&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>Liens symboliques et FTP</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/115-liens-symboliques-et-ftp" />
  <issued>2007-07-25T18:33:56+02:00</issued>
  <modified>2007-07-25T18:33:56+02:00</modified>
  <id>http://www.blog.cactuscrew.com/115-liens-symboliques-et-ftp</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>PHP</dc:subject>
  <summary>Il est parfois impossible d'accÃ©der au contenu d'un lien symbolique depuis un client FTP...</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Il est parfois impossible d'accÃ©der au contenu d'un lien symbolique depuis un client FTP...&lt;/p&gt; &lt;h5&gt;Explications&lt;/h5&gt;

&lt;p&gt;Imaginons que j'eu une installation PEAR dans &lt;code&gt;/usr/local/php5/etc/PEAR&lt;/code&gt;.&lt;br /&gt;
Je souhaite retrouver l'arborescence de PEAR dans mon repertoire de travail, &lt;code&gt;/home/toto/www/libs/pear&lt;/code&gt;, en FTP (pour l'autocomplÃ©tion de Zend par exemple).&lt;br /&gt;
&lt;br /&gt;
Je crÃ©e un lien symbolique&amp;nbsp;:
&lt;code&gt;$ ln -s /usr/local/php5/etc/PEAR /home/toto/www/libs/pear&lt;/code&gt;.&lt;br /&gt;
En console, aucun souci, j'accÃ¨de trÃ©s bien au prÃ©pertoire PEAR....&lt;br /&gt;
&lt;br /&gt;
Par contre depuis mon client FTP favori, je vois bien le lien... mais sont contenu est innaccessible... et oui, il faut rÃ©aliser un configuration particuliere du serveur ftp pour m'autoriser Ã  acceder au dossier /usr/local/php5/etc/PEAR.&lt;br /&gt;
Car le lien symbolique n'est qu'une &quot;redirection&quot;.&lt;br /&gt;
&lt;img src=&quot;/images/lnFTP/pear1.PNG&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h5&gt;Comment feinter&amp;nbsp;?&lt;/h5&gt;

&lt;p&gt;On va utiliser umont, qui sert Ã  rÃ©aliser un montage d'un rÃ©pertoire, vers un autre (principe du montage de partitions).&lt;br /&gt;
&lt;code&gt;$ mkdir /home/toto/www/libs/pear&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;$ mount --bind /usr/local/php5/etc/PEAR /home/toto/www/libs/pear&lt;/code&gt;&lt;br /&gt;
On crÃ©e le repertoire qui contiendra le montage, puis on crÃ©e le montage.&lt;br /&gt;
Et lÃ , pas de probleme, l'accÃ©s via ftp est impeccable ;)&lt;br /&gt;
&lt;img src=&quot;/images/lnFTP/pear2.PNG&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h5&gt;Et ouÃ©, mais aprÃ©s reboot je perd mon montage&amp;nbsp;!&lt;/h5&gt;

&lt;p&gt;Pas de panique, on a tout prÃ©vu !&lt;br /&gt;
On va modifier &lt;em&gt;/etc/fstab&lt;/em&gt;, pour qu'au reboot le montage se refasse nickel chrome&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;
# montages perso :
/usr/local/php5/etc/PEAR /home/toto/www/libs/pear none bind 0 0
&lt;/pre&gt;

&lt;p&gt;Et voila ;)&lt;/p&gt;

&lt;h5&gt;PS&lt;/h5&gt;

&lt;p&gt;Pour suppirmer ce montage, il suffira de lancer cette commande :&lt;br /&gt;
&lt;code&gt;$ umount /home/toto/www/libs/pear&lt;/code&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>DÃ©jouer la mise en cache des images</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/114-dejouer-la-mise-en-cache-des-images" />
  <issued>2007-07-23T18:21:53+02:00</issued>
  <modified>2007-07-23T18:21:53+02:00</modified>
  <id>http://www.blog.cactuscrew.com/114-dejouer-la-mise-en-cache-des-images</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>PHP</dc:subject>
  <summary>Par dÃ©faut, les images sont mises en cache par le navigateur. Mais voici une astuce pour forcer le rechargement d'une image dÃ©s qu'elle Ã  Ã©tÃ© modifiÃ©e sur le serveur.</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Par dÃ©faut, les images sont mises en cache par le navigateur. Mais voici une astuce pour forcer le rechargement d'une image dÃ©s qu'elle Ã  Ã©tÃ© modifiÃ©e sur le serveur.&lt;/p&gt; &lt;p&gt;&lt;code&gt;&amp;lt;img src=&quot;monImage.png?&amp;lt;?= filemtime('monImage.png')?&amp;gt;&quot; alt=&quot;mon image&quot; /&amp;gt;&lt;/code&gt;
&lt;br /&gt;
Ceci permet de rafraichir le cache lorsque l'image a Ã©tÃ© modifiÃ©e.&lt;br /&gt;
L'url de l'image comporte un argument qui est construit par le timestamp de la date de derniere modification du fichier.&lt;br /&gt;
Donc tant que l'image n'est pas modifÃ©e, le timestamp reste le mÃªme, et de par le fait, le cache navigateur rempli son rÃ´le (economie de bande passante).&lt;br /&gt;
Par contre dÃ©s que l'image est modifiÃ©e, la date de modification change, et de par le fait, le paramÃ¨tre timestamp Ã©galement, ce qui a pour effet du cotÃ© du navigateur Ã  chercher la nouvelle image.&lt;br /&gt;&lt;/p&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>Zend Framework est de sortie !</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/110-zend-framework-est-de-sortie" />
  <issued>2007-07-10T14:41:06+02:00</issued>
  <modified>2007-07-10T14:41:06+02:00</modified>
  <id>http://www.blog.cactuscrew.com/110-zend-framework-est-de-sortie</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>PHP</dc:subject>
  <summary>Il y a quelques jours, le Zend framework est sortit dans sa premiÃ¨re version stable utilisable en production, sous le numÃ©ro 1.0.0 :)</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;Il y a quelques jours, le Zend framework est sortit dans sa premiÃ¨re version stable utilisable en production, sous le numÃ©ro 1.0.0 :)&lt;/p&gt; &lt;p&gt;&lt;img src=&quot;http://framework.zend.com/images/logo.png&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;
Zend framework est un ensemble de classes, de mÃ©thodes de travail, et de rigueurs qui permet de construire une application solide.&lt;br /&gt;
A consommer sans modÃ©ration sur les nouveaux projets&amp;nbsp;!&lt;/p&gt;

&lt;h5&gt;Liens&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://framework.zend.com/&quot; hreflang=&quot;en&quot;&gt;Site officiel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://framework.zend.com/manual/fr/&quot; hreflang=&quot;fr&quot;&gt;Documentation franÃ§aise&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.z-f.fr/&quot; hreflang=&quot;fr&quot;&gt;Le Zend Framework Francophone&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>
</entry>
<entry xml:lang="fr">
  <title>Linux, c'est bon, mangez-en !</title>
  <link rel="alternate" type="text/html" href="http://www.blog.cactuscrew.com/109-linux-c-est-bon-mangez-en" />
  <issued>2007-07-03T16:54:26+02:00</issued>
  <modified>2007-07-03T16:54:26+02:00</modified>
  <id>http://www.blog.cactuscrew.com/109-linux-c-est-bon-mangez-en</id>
  <author><name>Nicolas SUPRIN</name></author>
  <dc:subject>Debian/Ubuntu</dc:subject>
  <summary>^^</summary>
  <content type="text/html" mode="escaped">&lt;p&gt;^^&lt;/p&gt; &lt;p&gt;Lu sur &lt;a href=&quot;http://www.bashfr.org/?5235&quot; hreflang=&quot;fr&quot;&gt;bashFr&lt;/a&gt; (le pain quotidien du geek).&lt;br /&gt;&lt;/p&gt;
&lt;pre&gt;
&amp;gt;lapinouminou: moi j'ai antivir avec analyse heuristic activÃ© et 
antivir il se mets Ã  jour tout seul au moins un fois par semaine . 
de plus sous IE j'utilise secuser et spybot search and destroy 
qui dispose d'un fonction de vaccination cela permet de black 
listÃ© des sites internet au comportement frauduleux ,comme le 
fait spywareblaster que j'ai aussi.
&amp;gt;alchy: Bah moi j'ai linux
&lt;/pre&gt;

&lt;p&gt;&lt;a href=&quot;http://ubuntu-fr.org&quot; hreflang=&quot;fr&quot;&gt;&lt;img src=&quot;http://www.hildoer.com/content/images/ubuntu_logo.gif&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content>
</entry>
</feed>