<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>jpdemory &#187; Web</title>
	<atom:link href="http://www.jpdemory.com/blog/category/web/feed" rel="self" type="application/rss+xml" />
	<link>http://www.jpdemory.com/blog</link>
	<description>Ressources informatiques</description>
	<lastBuildDate>Fri, 20 Aug 2010 09:49:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>PHP : préparer une requête avec MySQL</title>
		<link>http://www.jpdemory.com/blog/231</link>
		<comments>http://www.jpdemory.com/blog/231#comments</comments>
		<pubDate>Fri, 09 Oct 2009 09:04:06 +0000</pubDate>
		<dc:creator>Jean-Philippe DEMORY</dc:creator>
				<category><![CDATA[LAMP]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.jpdemory.com/blog/?p=231</guid>
		<description><![CDATA[Sous PHP, l&#8217;utilisation de paramètres dans SQL peut rendre la tâche fastidieuse avec les multiples concaténations. La fonction sprintf peut simplifier les choses&#8230; Création de la requête SQL en utilisant la fonction sprintf. Cela permet d&#8217;éviter des concaténations fastidieuses. $sql = sprintf("SELECT * FROM clients JOIN commandes ON clients.numclient = commandes.numclient WHERE numclient=%s AND date=%s", [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<p>Sous PHP, l&#8217;utilisation de paramètres dans SQL peut rendre la tâche fastidieuse avec les multiples concaténations.<br />
La fonction <code>sprintf</code> peut simplifier les choses&#8230;<br />
<span id="more-231"></span><br />
Création de la requête SQL en utilisant la fonction <code>sprintf</code>. Cela permet d&#8217;éviter des concaténations fastidieuses.</p>
<p><pre class="brush:php">
$sql = sprintf("SELECT *
FROM clients JOIN commandes ON clients.numclient = commandes.numclient
WHERE numclient=%s AND date=%s",
GetSQLValueString($client,"text"),
GetSQLValueString($dateCmd,"date")
);

$rs = mysql_query($sql) or die ("Erreur : <br/><code>" . $sql . "<code><br/>--<br/>"
. "<span class='alert'>" . mysql_error() . "</span>");
</pre>
</p>
<p>Une fonction très pratique dont je ne connais pas l'auteur. Cette fonction permet de protéger les paramètres passés à la requête SQL.</p>
<p><pre class="brush:php">
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
  $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
</pre></p>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jpdemory.com/blog/231/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xinha &#124; Un très puissant éditeur Javascript</title>
		<link>http://www.jpdemory.com/blog/136</link>
		<comments>http://www.jpdemory.com/blog/136#comments</comments>
		<pubDate>Sat, 21 Feb 2009 09:36:41 +0000</pubDate>
		<dc:creator>Jean-Philippe DEMORY</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[developper]]></category>

		<guid isPermaLink="false">http://www.jpdemory.com/blog/?p=136</guid>
		<description><![CDATA[Le composant &#171;&#160;TextArea&#160;&#187; en HTML est assez triste : pas moyen de formater le texte inséré. Xinha permet non seulement de formater le texte (gras, italique, &#8230;) mais également de nettoyer le texte copier/coller à partir de Word. Mais ce n&#8217;est pas tout, il dispose également d&#8217;un tas de plugins : Rechercher / remplacer Édition [...]


Related posts:<ol><li><a href='http://www.jpdemory.com/blog/133' rel='bookmark' title='Permanent Link: Xataface | La manière la plus rapide de créer une interface pour votre base MySQL'>Xataface | La manière la plus rapide de créer une interface pour votre base MySQL</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Le composant &laquo;&nbsp;TextArea&nbsp;&raquo; en HTML est assez triste : pas moyen de formater le texte inséré.</p>
<p><a title="Éditeur Javascript Xinha" href="http://xinha.webfactional.com">Xinha </a>permet non seulement de formater le texte (gras, italique, &#8230;) mais également de nettoyer le texte copier/coller à partir de Word.</p>
<p>Mais ce n&#8217;est pas tout, il dispose également d&#8217;un tas de plugins :</p>
<ul>
<li>Rechercher / remplacer</li>
<li>Édition des tags HTML</li>
<li>Éditeur de formule mathématique</li>
<li>&#8230;</li>
</ul>


<p>Related posts:<ol><li><a href='http://www.jpdemory.com/blog/133' rel='bookmark' title='Permanent Link: Xataface | La manière la plus rapide de créer une interface pour votre base MySQL'>Xataface | La manière la plus rapide de créer une interface pour votre base MySQL</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.jpdemory.com/blog/136/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xataface &#124; La manière la plus rapide de créer une interface pour votre base MySQL</title>
		<link>http://www.jpdemory.com/blog/133</link>
		<comments>http://www.jpdemory.com/blog/133#comments</comments>
		<pubDate>Sat, 21 Feb 2009 09:22:05 +0000</pubDate>
		<dc:creator>Jean-Philippe DEMORY</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[developper]]></category>

		<guid isPermaLink="false">http://www.jpdemory.com/blog/?p=133</guid>
		<description><![CDATA[Xataface est un framework qui permet de créer automatiquement à partir d&#8217;une base MySQL une interface qui permet de : Créer Editer Supprimer Lister des enregistrements dans une base de données MySQL. La configuration de l&#8217;interface est assez poussée même si on peut déplorer le fait qu&#8217;on ne peut pas, à ma connaissance, utiliser des [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<p>Xataface est un framework qui permet de créer automatiquement à partir d&#8217;une base MySQL une interface qui permet de :</p>
<ul>
<li>Créer</li>
<li>Editer</li>
<li>Supprimer</li>
<li>Lister</li>
</ul>
<p>des enregistrements dans une base de données MySQL.</p>
<p>La configuration de l&#8217;interface est assez poussée même si on peut déplorer le fait qu&#8217;on ne peut pas, à ma connaissance, utiliser des gadgets comme <a title="Dojo Toolkit" href="www.dojotoolkit.org/">dojo</a> ou <a title="Éditeur javascript xinha" href="xinha.webfactional.com">xinha</a>.</p>
<p>Par contre, on peut très facilement gérer les permissions selon l&#8217;utilisateur.</p>
<p>Un véritable bijou à tester absolument !!!</p>
<p><a href="http://xataface.com/">Xataface | The fastest way to build a front-end for your MySQL Database</a>.</p>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jpdemory.com/blog/133/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Page blanche en installant Moodle sous XAMPP</title>
		<link>http://www.jpdemory.com/blog/60</link>
		<comments>http://www.jpdemory.com/blog/60#comments</comments>
		<pubDate>Sat, 29 Mar 2008 22:35:44 +0000</pubDate>
		<dc:creator>Jean-Philippe DEMORY</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[moodle]]></category>
		<category><![CDATA[xampp]]></category>

		<guid isPermaLink="false">http://www.jpdemory.org/blog/?p=60</guid>
		<description><![CDATA[En essayant d&#8217;installer Moodle sous XAMPP, j&#8217;ai une page blanche après avoir saisie les paramètres de configuration de la base de données. En consultant le forum de Moodle j&#8217;ai obtenu la réponse suivante : Il faut remplacer la ligne : } else if (($fh = @fopen($INSTALL['wwwrootform'].'/'. $INSTALL['admindirname'].'/environment.xml', 'r')) !== false) { par } else if [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<p>En essayant d&#8217;installer Moodle sous XAMPP, j&#8217;ai une page blanche après avoir saisie les paramètres de configuration de la base de données.  En consultant le forum de Moodle j&#8217;ai obtenu la réponse suivante :</p>
<p>Il faut remplacer la ligne :</p>
<pre lang="php">} else if (($fh = @fopen($INSTALL['wwwrootform'].'/'.
$INSTALL['admindirname'].'/environment.xml', 'r')) !== false) {</pre>
<p>par</p>
<pre lang="php">} else if (($fh = @fopen($INSTALL["'".'wwwrootform'].'/'.
$INSTALL['admindirname']."/environment.xml'", 'r')) !== false) {</pre>
<p>dans le fichier install.php</p>
<p>A noter le problème de quote&#8230;</p>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jpdemory.com/blog/60/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>CSS : les propriétés top, right, bottom et left</title>
		<link>http://www.jpdemory.com/blog/48</link>
		<comments>http://www.jpdemory.com/blog/48#comments</comments>
		<pubDate>Fri, 06 Jul 2007 18:43:34 +0000</pubDate>
		<dc:creator>Jean-Philippe DEMORY</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://90plan.ovh.net/~jpdemory/blog/?p=48</guid>
		<description><![CDATA[Comment interpréter les propriétés appliqués aux attributs margin, padding, &#8230; Exemple, quelle est la taille de la marge du haut dans les exemples ci-dessous ? margin: 0; margin: 1px 2px 3px 4px; margin: 0 1px; margin: 0 1px 2px; Les valeurs sont indiquées dans le sens des aiguilles d&#8217;une montre en commencant par le haut. [...]


No related posts.]]></description>
			<content:encoded><![CDATA[<p>Comment interpréter les propriétés appliqués aux attributs margin, padding, &#8230;</p>
<p>Exemple, quelle est la taille de la marge du haut dans les exemples ci-dessous ?</p>
<p>
<pre lang="css">margin: 0;
margin: 1px 2px 3px 4px;
margin: 0 1px;
margin: 0 1px 2px;</pre>
</p>
<p><span id="more-48"></span></p>
<p>Les valeurs sont indiquées dans le sens des aiguilles d&#8217;une montre en commencant par le haut.</p>
<p>Dans l&#8217;exemple suivant, la marge du haut fait 1 pixel, la marge de droite 2 pixels, la marge du bas 3 pixels, la marge de gauche 4 pixels.</p>
<pre lang="css">margin: 1px 2px 3px 4px;</pre>
</p>
<p>Ici, toutes les marges sont à 0 pixel</p>
<pre lang="css">margin: 0px;</pre>
</p>
<p>Lorsque seulement deux valeurs sont indiquées, il faut les répéter. Dans ce cas, on a margin: 0px 1px 0px 1px; Sinon, la première valeur correspond à la marge du haut et du bas, et la seconde correspond à la marge de droite et de gauche. La marge du haut et du bas est de 0 pixel, et la marge de gauche et de droite 1 pixel.</p>
<pre lang="css">margin: 0px 1px;</pre>
</p>
<p>Lorsque trois valeurs sont indiquées, il manque la valeur de gauche : elle sera identique à la valeur de droite. Ici, la marge de haut est de 0 pixel, la marge de gauche et de droite 1 pixel et la marge du bas 2 pixels.</p>
<pre lang="css">margin: 0 1px 2px;</pre></p>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.jpdemory.com/blog/48/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
