<?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>Artiflo Inside &#187; JavaScript</title>
	<atom:link href="http://www.artiflo.net/category/dev/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.artiflo.net</link>
	<description>A draft for /b/tard guys.</description>
	<lastBuildDate>Wed, 18 Jan 2012 18:03:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Sajax et l&#8217;URL Rewritting</title>
		<link>http://www.artiflo.net/2009/07/sajax-et-lurl-rewritting/</link>
		<comments>http://www.artiflo.net/2009/07/sajax-et-lurl-rewritting/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 18:01:35 +0000</pubDate>
		<dc:creator>Loïc Bisière</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[rewritting]]></category>
		<category><![CDATA[sajax]]></category>
		<category><![CDATA[url]]></category>

		<guid isPermaLink="false">http://www.artiflo.net/?p=1192</guid>
		<description><![CDATA[<p>Re-bonjour, voici le 2ième &#171;&#160;hacks&#160;&#187; pour Sajax (voir mon précédent post sur Sajax et les Cookies).</p> <p>Alors soyons cours mais efficace.</p> <p>Sajax appel ses requêtes asynchrones par l&#8217;adresse courante de la page.</p> <p>exemple :</p> <p style="padding-left: 30px;">Si nous sommes sur la page index.php, les requêtes auront pour adresse :</p> <p style="padding-left: 30px;">http://www.bisiere.fr/index.php?rs=nom_de_la_fonction&#38;rst=&#38;rsrnd=1220887954407&#38;rsargs[]=arg1&#38;rsargs[]=arg2</p> <p style="padding-left: 30px;">Le [...]]]></description>
			<content:encoded><![CDATA[<p>Re-bonjour, voici le 2ième &laquo;&nbsp;hacks&nbsp;&raquo; pour <a title="Simple Ajax Toolkit" href="http://www.modernmethod.com/sajax/" target="_blank">Sajax</a> (voir mon précédent post sur <a title="Sajax et les cookies" href="http://www.artiflo.net/2009/07/sajax-et-les-cookies/" target="_blank">Sajax et les Cookies</a>).</p>
<p>Alors soyons cours mais efficace.</p>
<p>Sajax appel ses requêtes asynchrones par l&#8217;adresse courante de la page.</p>
<p><em>exemple</em> :</p>
<p style="padding-left: 30px;">Si nous sommes sur la page index.php, les requêtes auront pour adresse :</p>
<p style="padding-left: 30px;"><em>http://www.bisiere.fr/index.php?rs=nom_de_la_fonction&amp;rst=&amp;rsrnd=1220887954407&amp;rsargs[]=arg1&amp;rsargs[]=arg2</em></p>
<p style="padding-left: 30px;">Le problème s&#8217;impose lorsque l&#8217;on souhaite utiliser l&#8217;URL Rewritting et accéder à la page index.php via l&#8217;adresse :</p>
<p style="padding-left: 30px;"><em>http://www.bisiere.fr/home</em></p>
<p style="padding-left: 30px;">ce qui nous donnera une &laquo;&nbsp;requête Sajax&nbsp;&raquo; vers cette adresse :</p>
<p style="padding-left: 30px;"><em>http://www.bisiere.fr/home?rs=nom_de_la_fonction&amp;rst=&amp;rsrnd=1220887954407&amp;rsargs[]=arg1&amp;rsargs[]=arg2</em></p>
<p style="padding-left: 30px;">Et au mieux, vous aurez en retour de cette requête la page Html elle même (sans intérêt donc) sinon une erreur.</p>
<p>Le problème se situe dans la fonction <strong>sajax_get_my_uri()</strong> servant à récupérer l&#8217;adresse courante.</p>
<p><span id="more-1192"></span></p>
<p>Je vous propose donc de modifier cette fonction :</p>
<pre lang="php">function sajax_get_my_uri() {
	return $_SERVER["REQUEST_URI"];
}</pre>
<p>ainsi :</p>
<pre lang="php">function sajax_get_my_uri() {
	return $_SERVER["PHP_SELF"].'?'.$_SERVER["QUERY_STRING"];
}</pre>
<p>Et le problème est réglé, votre &laquo;&nbsp;requête Sajax&nbsp;&raquo; ira à la bonne adresse.<br />
Enjoy <img src='http://www.artiflo.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Lien utile : <a title="Sajax 0.12" href="http://www.artiflo.net/wp-content/uploads/2009/07/sajax-0.12.zip">Sajax 0.12</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.artiflo.net/2009/07/sajax-et-lurl-rewritting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sajax et les Cookies</title>
		<link>http://www.artiflo.net/2009/07/sajax-et-les-cookies/</link>
		<comments>http://www.artiflo.net/2009/07/sajax-et-les-cookies/#comments</comments>
		<pubDate>Fri, 24 Jul 2009 18:00:20 +0000</pubDate>
		<dc:creator>Loïc Bisière</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Php]]></category>
		<category><![CDATA[cookie]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[sajax]]></category>

		<guid isPermaLink="false">http://www.artiflo.net/?p=1196</guid>
		<description><![CDATA[<p>Bonjour à tous, aujourd&#8217;hui je vous propose deux &#171;&#160;hacks&#160;&#187; pour Sajax (Simple Ajax Toolkit).</p> <p>Un problème se pose lors de l&#8217;utilisation d&#8217;un script appelé via une XMLHttpRequest de Sajax (requêtes dites « asynchrones ») qui exécute un enregistrement de cookie :</p> function vote_cookie($id) { setcookie("MonCookie", $id, time() + 86400); } <p>Dans notre cas, impossible de faire marcher [...]]]></description>
			<content:encoded><![CDATA[<p>Bonjour à tous, aujourd&#8217;hui je vous propose deux &laquo;&nbsp;hacks&nbsp;&raquo; pour <a href="http://www.modernmethod.com/sajax/" target="_blank">Sajax</a> (Simple Ajax Toolkit).</p>
<p>Un problème se pose lors de l&#8217;utilisation d&#8217;un <strong>script appelé via une XMLHttpRequest de Sajax</strong> (requêtes dites « asynchrones ») qui exécute un enregistrement de <strong>cookie</strong> :</p>
<pre lang="php">function vote_cookie($id) {
	setcookie("MonCookie", $id, time() + 86400);
}</pre>
<p>Dans notre cas, impossible de faire marcher ce script car à chaque appel nous avons droit à cette erreur :</p>
<pre lang="php"><strong>Warning</strong>:  Cannot modify header information - headers already sent...</pre>
<p><span id="more-1196"></span></p>
<p>Ce problème viens du script Sajax qui renvoie le caractère &laquo;&nbsp;+&nbsp;&raquo; avant d&#8217;afficher le résultat du script.<br />
Je m&#8217;explique, pour paramétrer un Cookie, il faut que ça soit le première chose envoyée au client car les Cookies font parti de l&#8217;en-tête.</p>
<p>exemple d&#8217;en-tête :</p>
<pre lang="html">Host	www.bisiere.fr
User-Agent	Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
Accept	text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language	fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding	gzip,deflate
Accept-Charset	ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive	300
Connection	keep-alive
Referer	http://www.bisiere.fr/index.php
Cookie	MonCookie=12</pre>
<p>Alors comment régler ce problème, et bien tout simplement dans le fichier Sajax.php trouver ce bout de code :</p>
<pre lang="php">	echo "+:";
	$result = call_user_func_array($func_name, $args);
	echo "var res = " . trim(sajax_get_js_repr($result)) . "; res;";</pre>
<p>et remplacer le par :</p>
<pre lang="php">	$result = call_user_func_array($func_name, $args);
        echo "+:";
	echo "var res = " . trim(sajax_get_js_repr($result)) . "; res;";</pre>
<p>Ainsi vos fonctions seront appelées et exécutée avant que des informations (autre que l&#8217;en-tête) ne soient envoyées au client.<br />
Problème réglé <img src='http://www.artiflo.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  !</p>
<p>Trop facile Sajax ! mais comment l&#8217;utiliser tout en gardant mes règles d&#8217;URL Rewritting ? <a title="Sajax et l'URL Rewritting" href="http://www.artiflo.net/2009/07/sajax-et-lurl-rewritting/" target="_blank">la réponse ici</a> &#8230;</p>
<p>Liens utiles :</p>
<ul>
<li><a href="http://phpcodeur.net/articles/php/cookies/" target="_blank">Tutorial sur les Cookies</a></li>
<li><a href="http://www.modernmethod.com/sajax/" target="_blank">Site Officiel de Sajax</a></li>
<li><a title="Sajax 0.12" href="http://www.artiflo.net/wp-content/uploads/2009/07/sajax-0.12.zip">Sajax 0.12</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.artiflo.net/2009/07/sajax-et-les-cookies/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

