<?xml version="1.0" encoding="UTF-8" ?>
<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:admin="http://webns.net/mvcb/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns="http://purl.org/rss/1.0/">

<channel rdf:about="http://www.blog.cactuscrew.com/">
  <title>CactusCrew Developpement Web</title>
  <description><![CDATA[Developpement Web Nouvelles technologies]]></description>
  <link>http://www.blog.cactuscrew.com/</link>
  <dc:language>fr</dc:language>
  <dc:creator></dc:creator>
  <dc:rights></dc:rights>
  <dc:date>2008-05-15T13:01:31+02:00</dc:date>
  <admin:generatorAgent rdf:resource="http://www.dotclear.net/" />
  
  <sy:updatePeriod>daily</sy:updatePeriod>
  <sy:updateFrequency>1</sy:updateFrequency>
  <sy:updateBase>2008-05-15T13:01:31+02:00</sy:updateBase>
  
  <items>
  <rdf:Seq>
    <rdf:li rdf:resource="http://www.blog.cactuscrew.com/125-developpeur-php5-xml-et-webdesigner-2-postes-en-cdi-a-marseille" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/124-integration-de-fckeditor-dans-html_quickform" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/123-renouvellement-de-terminal-chez-sfr" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/122-envoyer-des-mails-avec-son-compte-gmail" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/121-skaaz-test" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/120-erreur-1030-got-error-134-from-storage-engine" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/119-valeurs-par-defaut-d-un-hierselect" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/118-groupe-d-html_quickform_advcheckbox" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/117-autoload-a-utiliser-avec-parcimonie" />
  <rdf:li rdf:resource="http://www.blog.cactuscrew.com/116-giant-xtc-composite-3" />
  </rdf:Seq>
  </items>
</channel>

<item rdf:about="http://www.blog.cactuscrew.com/125-developpeur-php5-xml-et-webdesigner-2-postes-en-cdi-a-marseille">
  <title>DÃ©veloppeur PHP5/XML et Webdesigner : 2 postes en CDI Ã  Marseille</title>
  <link>http://www.blog.cactuscrew.com/125-developpeur-php5-xml-et-webdesigner-2-postes-en-cdi-a-marseille</link>
  <dc:date>2008-05-15T13:01:31+02:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>General</dc:subject>
  <description>Editeur de logiciel spÃ©cialisÃ© dans la gestion de lâ€™information en ligne, la sociÃ©tÃ© XIBUX Software recherche un dÃ©veloppeur web, ainsi qu'un webdesigner, dans le cadre du dÃ©veloppement du produit Xibux.</description>
  <content:encoded><![CDATA[<p>Editeur de logiciel spÃ©cialisÃ© dans la gestion de lâ€™information en ligne, la sociÃ©tÃ© XIBUX Software recherche un dÃ©veloppeur web, ainsi qu'un webdesigner, dans le cadre du dÃ©veloppement du produit Xibux.</p> <h5>DÃ©veloppeur PHP5/XML (H/F) en CDI</h5>


<p>En tant que dÃ©veloppeur Web vous rejoindrez une Ã©quipe motivÃ©e et dynamique et
participerez Ã  la mise Ã  jour du produit Xibux, au dÃ©veloppement de nouvelles
fonctionnalitÃ©s ainsi quâ€™Ã  la maintenance et au support aux utilisateurs.<br /></p>


<p>Nous recherchons un candidat motivÃ©, dynamique, passionnÃ© ayant les compÃ©tences
techniques suivantes :<br /></p>

<ul>
<li>Programmation objet en PHP5</li>
<li>Langage SQL, Bonne connaissance de la base de donnÃ©es MySQL.</li>
<li>XML</li>
<li>Langage Javascript</li>
<li>Ajax, CSS</li>
</ul>

<p>Vous devez avoir dÃ©jÃ  rÃ©alisÃ© des sites Internet dynamiques et la connaissance de Linux /
Apache est un plus.<br /></p>


<h5>Webdesigner (H/F) en CDI</h5>


<p>En tant que Graphiste / Webdesigner vous rejoindrez une Ã©quipe motivÃ©e et dynamique et
participerez Ã  la mise Ã  jour du produit Xibux et au dÃ©veloppement de nouvelles
fonctionnalitÃ©s. <br />
Vous serez chargÃ© de dÃ©velopper des interfaces graphiques (XHTML/CSS),
crÃ©er des contenus multimedia, crÃ©er des animations flash.<br />
Nous cherchons un candidat motivÃ©, dynamique, passionnÃ© ayant les compÃ©tences
techniques suivantes&nbsp;:</p>
<ul>
<li>MaÃ®trise de Flash, Photoshop,</li>
<li>MaÃ®trise de XHTML/CSS,</li>
</ul>
<p>Vous devez dÃ©jÃ  avoir rÃ©alisÃ©/intÃ©grÃ© des chartes pour des sites Internet.<br />
Profil recherchÃ©&nbsp;:</p>
<ul>
<li>expÃ©rience de 2 ans minimum en agence de Communication MultimÃ©dia ou similaire,</li>
<li>Sens de la crÃ©ativitÃ© et de lâ€™ergonomie, rapiditÃ©, efficacitÃ©,</li>
<li>CapacitÃ©s d'analyse et de synthÃ¨se, rigueur et autonomie.</li>
<li>GoÃ»t pour le travail en Ã©quipe.</li>
</ul>
<p><br />
Postes en CDI, lieu de travail Marseille centre.
Merci dâ€™adresser par mail un courrier de candidature et un CV dÃ©taillÃ© Ã  lâ€™adresse suivante
recrutement@xibux.com</p>]]></content:encoded>
</item>
<item rdf:about="http://www.blog.cactuscrew.com/124-integration-de-fckeditor-dans-html_quickform">
  <title>IntÃ©gration de FCKeditor dans HTML_QuickForm</title>
  <link>http://www.blog.cactuscrew.com/124-integration-de-fckeditor-dans-html_quickform</link>
  <dc:date>2008-04-09T15:52:22+02:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>PEAR</dc:subject>
  <description>J'ai crÃ©Ã© une classe prÃªte Ã  l'emploi pour utiliser l'Ã©diteur FCKeditor en tant qu'Ã©lÃ©ment de formulaire HTML_QuickForm.</description>
  <content:encoded><![CDATA[<p>J'ai crÃ©Ã© une classe prÃªte Ã  l'emploi pour utiliser l'Ã©diteur FCKeditor en tant qu'Ã©lÃ©ment de formulaire HTML_QuickForm.</p> <h5>PrÃ©-requis</h5>

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

<h5>La classe HTML_QuickForm_FCKeditor</h5>

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

/**
* FCKeditor
*
* @var FCKeditor
*/
private $O_FCKEditor	= null;</p>


<p>/**
* 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-&gt;_persistantFreeze = false;
$this-&gt;_type = '';</p>

<pre></pre>

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

}

/**
* Applique le nom qui va bien
*
* @param string $S_name
*/
public function setName($S_name) {</p>

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

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

}

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

}

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

}

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

}

/**
* Applique la largeur
*
* @param int $I_width
* @return Toodate_HTML_QuickForm_FCKeditor
*/
public function setWidth($I_width) {
$this-&gt;O_FCKEditor-&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-&gt;O_FCKEditor-&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-&gt;O_FCKEditor-&gt;Config<a href="$S_name">$S_name</a>	= $S_value;

}

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

}

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

}

}</p>]]></content:encoded>
</item>
<item rdf:about="http://www.blog.cactuscrew.com/123-renouvellement-de-terminal-chez-sfr">
  <title>Renouvellement de terminal chez SFR</title>
  <link>http://www.blog.cactuscrew.com/123-renouvellement-de-terminal-chez-sfr</link>
  <dc:date>2008-03-27T22:11:43+01:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>General</dc:subject>
  <description>Attention, SFR "arnaque" ses clientsÂ !</description>
  <content:encoded><![CDATA[<p>Attention, SFR "arnaque" ses clients&nbsp;!</p> <p><img src="http://www.sfr.fr/css/img/nav-top/logo-sfr.gif" alt="" /><br /></p>

<h5>Mon histoire</h5>

<p>AbonnÃ© SFR Pro depuis Janvier 2003, j'ai dÃ©cidÃ© courant Juin 2007 de changer mon tÃ©lÃ©phone vieillissant par un modÃ¨le plus rÃ©cent, et donc de profiter de l'offre de renouvellement de SFR.<br />
Pour profiter d'un tarif rÃ©duit sur le tÃ©lÃ©phone, on doit se rÃ©engager <strong>24 mois</strong> chez SFR. Bon jusque lÃ , pas de problÃ¨me.<br />
J'ai donc choisi mon nouveau tÃ©lÃ¨phone, et j'Ã©tais reparti pour 2 ans chez eux.
<br />
Hors, courant Mars 2008, par un heureux hasard, en navigant sur le site SFR, je vois que mon forfait, pour un engagement <strong>24 mois</strong> Ã©tait affichÃ© <strong>5â‚¬ moins cher</strong> que sur mes factures. <br />
De plus, je vois que le tarif affichÃ© sur ma facture, correspond sur le site intrnet SFR au tarif pratiquÃ© pour un engagement de <strong>12 mois</strong> seulement.<br />
<br />
J'appelle donc mon service client, qui m'informe que pour profiter du <strong>tarif mensuel rÃ©duit</strong>, il faut en faire la <strong>demande explicite lors du renouvellement du tÃ©lÃ©phone, et que ce n'est pas du tout proposÃ© automatiquement</strong>.<br />
<br />
<strong>C'est un peu un drÃ´le de procÃ©dÃ©, n'est-ce pas&nbsp;? On vous rÃ©engage pour 24 mois, mais on vous fais pas profiter du tarif 24 mois, mais 12 mois !<br /></strong>
<br />
J'ai donc demander Ã  bÃ©nÃ©ficier du tarif 24 mois, et sera donc en vigueur Ã  la prochaine Ã©chÃ©ance.<br />
Bon Ã§a c'est une bonne nouvelle. Mais le fait de demander ceci en Mars 2008, me rÃ©engage pour 24 nouveaux mois, soit un engagement jusqu'Ã  Mars 2010.<br />
<br />
J'ai donc dÃ©cidÃ© de contacter le service consomateur SFR, pour leur rÃ©clamer le remboursement de la sur facturation mensuelle qui m'Ã©tais imposÃ©e depuis Juillet 2007, ainsi que de ne pas modifier la date de fin d'engagement initialement prÃ©vue de Juin 2009.<br />
<br />
L'affaire suis son cours.<br />
<br />
<strong>Donc abonnÃ©s SFR, vous saurez que pour rÃ©duire sa facture mensuel, il faudra demander explicitement Ã  bÃ©nÃ©ficier du tarif 24 mois !</strong></p>]]></content:encoded>
</item>
<item rdf:about="http://www.blog.cactuscrew.com/122-envoyer-des-mails-avec-son-compte-gmail">
  <title>Envoyer des mails avec son compte Gmail</title>
  <link>http://www.blog.cactuscrew.com/122-envoyer-des-mails-avec-son-compte-gmail</link>
  <dc:date>2008-03-04T12:38:04+01:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>PHP</dc:subject>
  <description>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.</description>
  <content:encoded><![CDATA[<p>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.</p> <h5>PHPMailer</h5>

<p>Est une classe PHP d'envoi de mail open source disponible <a href="http://phpmailer.codeworxtech.com" hreflang="en">ici</a>. Je recommande la version 2.0.</p>

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

<h5>Utilisation</h5>

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

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

<p>Et voila ;) have fun&nbsp;!</p>]]></content:encoded>
</item>
<item rdf:about="http://www.blog.cactuscrew.com/121-skaaz-test">
  <title>Skaaz, test</title>
  <link>http://www.blog.cactuscrew.com/121-skaaz-test</link>
  <dc:date>2008-02-21T12:36:38+01:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>Geek</dc:subject>
  <description>Dites bonjour Ã  mon robot !</description>
  <content:encoded><![CDATA[Dites bonjour Ã  mon robot ! <object id="flash" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="200" height="360" title="Dialogue">
<param name="movie" value="http://www.skaaz.org:80/eflash/B464DD53-6D03-4460-8E6E-227A8C1F891E.swf?skaazName=nicoiscool&H=360&W=200&skID=nicoiscool">
<param name="FlashVars" value="" >
<param name="quality" value="high">
<embed src="http://www.skaaz.org:80/eflash/B464DD53-6D03-4460-8E6E-227A8C1F891E.swf?skaazName=nicoiscool&H=360&W=200&skID=nicoiscool" name="flash" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="200" height="360" FlashVars="" swLiveConnect="true"></embed>
</object>]]></content:encoded>
</item>
<item rdf:about="http://www.blog.cactuscrew.com/120-erreur-1030-got-error-134-from-storage-engine">
  <title>Erreur 1030 : Got error 134 from storage engine</title>
  <link>http://www.blog.cactuscrew.com/120-erreur-1030-got-error-134-from-storage-engine</link>
  <dc:date>2008-01-30T10:14:58+01:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>MySQL</dc:subject>
  <description>S'il vous arrive ce genre de message, pas de panique, voici la solution</description>
  <content:encoded><![CDATA[<p>S'il vous arrive ce genre de message, pas de panique, voici la solution</p> <p>En rÃ¨gle gÃ©nÃ©rale, cette erreur se produit sur les <code>SELECT</code> effectuÃ©s sur certaines tables MyISAM.<br />
CelÃ  vient du fait que la strcuture physique de la table est endomagÃ©e, pour une raison X ou Y.<br />
<img src="http://blog.ndreams.org/blog/images/Posts/mysql_logo.jpg" alt="" /></p>

<h5>Solution</h5>

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


<h5>Resultat&nbsp;:</h5>

<p><img src="/images/hierselect/hierselect.PNG" alt="" /></p>


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

<h5>C'est Ã  <a href="http://www.crapulescorp.net/" hreflang="fr">BÃ©ryl</a> qu'il faut dire merci ;)</h5>]]></content:encoded>
</item>
<item rdf:about="http://www.blog.cactuscrew.com/118-groupe-d-html_quickform_advcheckbox">
  <title>Groupe d'HTML_Quickform_advcheckbox</title>
  <link>http://www.blog.cactuscrew.com/118-groupe-d-html_quickform_advcheckbox</link>
  <dc:date>2007-10-18T16:29:16+02:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>PEAR</dc:subject>
  <description>CrÃ©er un groupe de cases Ã  cochÃ© avancÃ©es.</description>
  <content:encoded><![CDATA[<p>CrÃ©er un groupe de cases Ã  cochÃ© avancÃ©es.</p> <p>C'est facile, il suffit d'utiliser les Ã©lements advcheckbox standard (voir <a href="http://blog.cactuscrew.com/21-gerer-plus-facilement-les-checkboxes-avec-html_quickform_advcheckbox.html" hreflang="fr">ici</a>), pour crÃ©er un groupe tout ce qu'il y a de plus ordinaire.<br />
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.</p>
<pre><span style="color: #0000ff;">$A_sorbets</span>		= <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
&nbsp;
&nbsp;
<span style="color: #0000ff;">$A_sorbets</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span>	= <span style="color: #000000; font-weight: bold;">new</span> HTML_QuickForm_advcheckbox<span style="color: #66cc66;">&#40;</span>
	<span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'citron'</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'citron'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
	
<span style="color: #0000ff;">$A_sorbets</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span>	= <span style="color: #000000; font-weight: bold;">new</span> HTML_QuickForm_advcheckbox<span style="color: #66cc66;">&#40;</span>
	<span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'fraise'</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'fraise'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
	
<span style="color: #0000ff;">$A_sorbets</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span>	= <span style="color: #000000; font-weight: bold;">new</span> HTML_QuickForm_advcheckbox<span style="color: #66cc66;">&#40;</span>
	<span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'framboise'</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'framboise'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
	
<span style="color: #0000ff;">$A_sorbets</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span>	= <span style="color: #000000; font-weight: bold;">new</span> HTML_QuickForm_advcheckbox<span style="color: #66cc66;">&#40;</span>
	<span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'melon'</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'melon'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
	
<span style="color: #0000ff;">$A_sorbets</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span>	= <span style="color: #000000; font-weight: bold;">new</span> HTML_QuickForm_advcheckbox<span style="color: #66cc66;">&#40;</span>
	<span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'fruit de la passion'</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>, <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">''</span>, <span style="color: #ff0000;">'passion'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
	
&nbsp;
<span style="color: #0000ff;">$O_form</span>-&gt;<span style="color: #006600;">addGroup</span><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$A_sorbets</span>, <span style="color: #ff0000;">'sorbets'</span>, <span style="color: #ff0000;">"J'aime les sorbets"</span>, <span style="color: #ff0000;">"&lt;br/&gt;<span style="color: #000099; font-weight: bold;">\n</span>"</span>, <span style="color: #000000; font-weight: bold;">true</span><span style="color: #66cc66;">&#41;</span>;</pre>

<p>Ce qui donne ceci :<br />
<img src="/images/checkbox/advcheck.PNG" alt="" /><br />
Et voila&nbsp;!</p>]]></content:encoded>
</item>
<item rdf:about="http://www.blog.cactuscrew.com/117-autoload-a-utiliser-avec-parcimonie">
  <title>Autoload, Ã  utiliser avec parcimonie</title>
  <link>http://www.blog.cactuscrew.com/117-autoload-a-utiliser-avec-parcimonie</link>
  <dc:date>2007-09-06T14:19:58+02:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>PHP</dc:subject>
  <description>La mÃ©thode __autoload permet de s'Ã©pargner d'Ã©crire les require de chaque classe utilisÃ©es dans une appli.</description>
  <content:encoded><![CDATA[<p>La mÃ©thode __autoload permet de s'Ã©pargner d'Ã©crire les require de chaque classe utilisÃ©es dans une appli.</p> <h5>Avantages</h5>
<ul>
<li>On gagne en temps de dÃ©veloppement Ã  ne plus taper les require et autres include.</li>
<li>... heu j'en vois pas d'autres</li>
</ul>
<h5>InconvÃ©niant</h5>
<ul>
<li>L'autoload alourdi l'exÃ©cution du code...</li>
</ul>
<h5>Mon astuce</h5>

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

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


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

<h5>Notice</h5>

<p><img src="/images/autoload.PNG" alt="" /></p>

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

<h5>Conclusion</h5>

<p>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. ;)</p>]]></content:encoded>
</item>
<item rdf:about="http://www.blog.cactuscrew.com/116-giant-xtc-composite-3">
  <title>Giant XTC Composite 3</title>
  <link>http://www.blog.cactuscrew.com/116-giant-xtc-composite-3</link>
  <dc:date>2007-08-26T21:57:48+02:00</dc:date>
  <dc:language>fr</dc:language>
  <dc:creator>Nicolas SUPRIN</dc:creator>
  <dc:subject>General</dc:subject>
  <description>Un vÃ©lo qu'il est bien pour le X-Country</description>
  <content:encoded><![CDATA[<p>Un vÃ©lo qu'il est bien pour le X-Country</p> <p>Voila donc mon dernier "investissement" :<br />
<a href="/images/vtt/img-1.jpg" hreflang="fr"><img src="/images/vtt/img-1.jpg" alt="" /></a></p>

<h5>Giant XTC composite 3</h5>

<p>11 Kg de carbone (pour le cadre et le jeu de direction) et d'alu pour le reste des composants (Groupe Complet Deore LX&nbsp;: les 2 dÃ©railleurs, shifters, moyeux et boitier de manivelles), freins Ã  disques hydroliques Avid Juicy Free, fourche Rock Shocks Reba...<br />
Que du bonheur ;)<br /></p>]]></content:encoded>
</item>

</rdf:RDF>