<?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>CrisDev - Cristian Medeiros &#187; XAJAX</title>
	<atom:link href="http://crisdev.eti.br/tag/xajax/feed" rel="self" type="application/rss+xml" />
	<link>http://crisdev.eti.br</link>
	<description>Desenvolvedor Web</description>
	<lastBuildDate>Sun, 03 Apr 2011 15:38:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Smarty e Xajax &#8211; implementando</title>
		<link>http://crisdev.eti.br/smarty-e-xajax-implementando.html</link>
		<comments>http://crisdev.eti.br/smarty-e-xajax-implementando.html#comments</comments>
		<pubDate>Thu, 15 May 2008 10:35:15 +0000</pubDate>
		<dc:creator>cristianmedeiros</dc:creator>
				<category><![CDATA[AJAX/XAJAX]]></category>
		<category><![CDATA[Smarty/Templates]]></category>
		<category><![CDATA[smarty]]></category>
		<category><![CDATA[XAJAX]]></category>

		<guid isPermaLink="false">http://crisdev.eti.br/?p=9&#038;language=pt</guid>
		<description><![CDATA[O Xajax se encaixa perfeitamente com a utiliza&#231;&#227;o do Smarty, pois escrevemos fun&#231;&#245;es php para que ele realize as requisi&#231;&#245;es Ajax e isso pode ser feito no php no qual designamos as vari&#225;veis para o template. Exemplo1.php: &#60;?PHP include &#8216;_lib/xajax/xajax_core/xajax.inc.php&#8217;; include &#8216;_lib/smarty.php&#8217;; $xajax = new xajax(); function Soma($a, $b) { &#160;&#160;&#160; $response = new xajaxResponse(); [...]]]></description>
			<content:encoded><![CDATA[<p>O Xajax se encaixa perfeitamente com a utiliza&ccedil;&atilde;o do Smarty, pois escrevemos fun&ccedil;&otilde;es php para que ele realize as requisi&ccedil;&otilde;es Ajax e isso pode ser feito no php no qual designamos as vari&aacute;veis para o template.</p>
<p>Exemplo1.php:</p>
<p>&lt;?PHP</p>
<p>include &#8216;_lib/xajax/xajax_core/xajax.inc.php&#8217;;</p>
<p></p>
<p>include &#8216;_lib/smarty.php&#8217;;</p>
<p></p>
<p>$xajax = new xajax();</p>
<p>function Soma($a, $b)</p>
<p></p>
<p>{</p>
<p></p>
<p>&nbsp;&nbsp;&nbsp; $response = new xajaxResponse();</p>
<p></p>
<p>&nbsp;&nbsp;&nbsp; $response-&gt;assign(&#8216;resultado&#8217;, &#8216;innerHTML&#8217;, $a + $b);</p>
<p></p>
<p>&nbsp;&nbsp;&nbsp; return $response;</p>
<p></p>
<p>}</p>
<p></p>
<p>$xajax-&gt;registerFunction(&#8216;Soma&#8217;);</p>
<p>$xajax-&gt;processRequest();</p>
<p></p>
<p>$smarty = new Smarty();</p>
<p>$smarty-&gt;assign(&#8216;xajax_javascript&#8217;, $xajax-&gt;getJavascript(&#8216;_lib/xajax&#8217;)); //o m&eacute;todo getJavascript permite especificar o path onde deve ser procurado as bibliotecas js</p>
<p>$smarty-&gt;display(&#8216;form.tpl&#8217;);</p>
<p>?&gt;</p>
<p>form.tpl:&nbsp;</p>
<p>&lt;html&gt;<br />
&lt;head&gt;<br />
&nbsp;&nbsp;&nbsp; {$xajax_javascript}<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;form action=&quot;#&quot; method=&quot;post&quot;&gt;<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;input type=&quot;text&quot; name=&quot;val1&quot; id=&quot;val1&quot;&gt;<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;input type=&quot;text&quot; name=&quot;val2&quot; id=&quot;val2&quot;&gt;<br />
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;input type=&quot;button&quot; onclick=&quot;xajax_Soma(document.getElementById(&#8216;val1&#8242;).value,document.getElementById(&#8216;val2&#8242;).value)&quot; id=&quot;btnAdd&quot; value=&quot;Click Me&quot; /&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;p id=&quot;resultado&quot;&gt;&lt;/p&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;/form&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</p>
<p>Pronto, simplesmente isso, n&atilde;o &eacute; necess&aacute;rio nada mais para que os dois trabalhem juntos. Qualquer d&uacute;vida mande e-mail ou comente.</p>
]]></content:encoded>
			<wfw:commentRss>http://crisdev.eti.br/smarty-e-xajax-implementando.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Trabalhando com XAJAX</title>
		<link>http://crisdev.eti.br/trabalhando-com-xajax.html</link>
		<comments>http://crisdev.eti.br/trabalhando-com-xajax.html#comments</comments>
		<pubDate>Mon, 28 Apr 2008 21:39:49 +0000</pubDate>
		<dc:creator>cristianmedeiros</dc:creator>
				<category><![CDATA[AJAX/XAJAX]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[XAJAX]]></category>

		<guid isPermaLink="false">http://crisdev.eti.br/?p=3</guid>
		<description><![CDATA[XAJAX é um toolkit para trabalhar com ajax no PHP, ele é apoiado basicamente em prototype e pode ser extendido usando outros frameworks AJAX como scriptaculous ou mootools. O diferencial do XAJAX é a facilidade em utiliza-lo, você basicamente escreve código PHP e ele gera o AJAX sozinho. Veja o exemplo: exemplo1.php: &#60;?PHP include &#8220;_lib/xajax/xajax_core/xajax.inc.php&#8221;; [...]]]></description>
			<content:encoded><![CDATA[<p>XAJAX é um toolkit para trabalhar com ajax no PHP, ele é apoiado basicamente em prototype e pode ser extendido usando outros frameworks AJAX como scriptaculous ou mootools.<br />
O diferencial do XAJAX é a facilidade em utiliza-lo, você basicamente escreve código PHP e ele gera o AJAX sozinho.<br />
Veja o exemplo:</p>
<p>exemplo1.php:</p>
<p>&lt;?PHP<br />
include &#8220;_lib/xajax/xajax_core/xajax.inc.php&#8221;;</p>
<p>$xajax = new xajax();</p>
<p>function Soma($a, $b)<br />
{<br />
$response = new xajaxResponse();<br />
$response-&gt;assign(&#8216;resultado&#8217;, &#8216;innerHTML&#8217;, $a + $b);<br />
return $response;<br />
}</p>
<p>$xajax-&gt;registerFunction(&#8216;Soma&#8217;);</p>
<p>$xajax-&gt;processRequest();</p>
<p>$xajax-&gt;printJavascript(&#8216;_lib/xajax/&#8217;);<br />
?&gt;<br />
&lt;form action=&#8221;#&#8221; method=&#8221;post&#8221;&gt;<br />
&lt;input type=&#8221;text&#8221; name=&#8221;val1&#8243; id=&#8221;val1&#8243;&gt;</p>
<p>&lt;input type=&#8221;text&#8221; name=&#8221;val2&#8243; id=&#8221;val2&#8243;&gt;<br />
&lt;input type=&#8221;button&#8221; onclick=&#8221;xajax_Soma(document.getElementById(&#8216;val1&#8242;).value,<br />
document.getElementById(&#8216;val2&#8242;).value)&#8221; id=&#8221;btnAdd&#8221; value=&#8221;Click Me&#8221; /&gt;</p>
<p>&lt;p id=&#8221;resultado&#8221;&gt;&lt;/p&gt;<br />
&lt;/form&gt;</p>
<p>Como podem observar não escrevemos quase nada de javascript (apenas a chamada da função no onClick), o que isso facilita? Bom, para mim que acho o JavaScript uma linguagem mal acabada, facilita muito, pois me preocupo com a lógica em PHP, construindo funções que já estou acostumado a criar e o XAJAX cuida para retornar isso de uma forma simples para o browser.</p>
<p>Um exemplo mais complexo:</p>
<p>exemplo2.php:</p>
<p>&lt;?php<br />
include &#8220;_lib/xajax/xajax_core/xajax.inc.php&#8221;;</p>
<p>$xajax = new xajax();</p>
<p>function Consulta($nome)<br />
{</p>
<p>$con = mysql_connect(&#8220;localhost&#8221;,&#8221;root&#8221;,&#8221;");<br />
$db = mysql_select_db (&#8220;xajax_teste&#8221;,$con);</p>
<p>$query = &#8220;select * from cadastro where nome like &#8216;%$nome%&#8217;&#8221;;<br />
$result = mysql_query($query) or die(mysql_error());</p>
<p>$response = new xajaxResponse();</p>
<p>while($row = mysql_fetch_assoc($result)){</p>
<p>$html .= utf8_encode($row['nome']).&#8221; &#8220;.$row['email'].&#8221;&lt;br&gt;&#8221;;</p>
<p>}<br />
$response-&gt;assign(&#8216;resultado&#8217;, &#8216;innerHTML&#8217;, $html);<br />
return $response;<br />
}</p>
<p>$xajax-&gt;registerFunction(&#8216;Consulta&#8217;);</p>
<p>$xajax-&gt;processRequest();</p>
<p>?&gt;</p>
<p>&lt;?php $xajax-&gt;printJavascript(&#8216;_lib/xajax/&#8217;); ?&gt;</p>
<p>&lt;form action=&#8221;#&#8221; method=&#8221;post&#8221;&gt;<br />
&lt;input type=&#8221;text&#8221; name=&#8221;busca&#8221; id=&#8221;busca&#8221;&gt;</p>
<p>&lt;input type=&#8221;button&#8221; onclick=&#8221;xajax_Consulta(document.getElementById(&#8216;busca&#8217;).value)&#8221;<br />
id=&#8221;btnAdd&#8221; value=&#8221;Busca&#8221; /&gt;</p>
<p>&lt;p id=&#8221;resultado&#8221;&gt;&lt;/p&gt;</p>
<p>&lt;/form&gt;<br />
Notem que no retorno do nome ($row['nome']) tem um uft8_encode() isto porque o retorno do XAJAX é em xml (como todo AJAX deveria ser) e portanto precisa desse encode, uma vez que o xml possui algumas limitações quanto ao charset.</p>
<p>Mostrei aqui algumas implementações bem simples com códigos bem básicos, em uma arquitetura mais eleveda, pode-se remover o XAJAX do html facilmente, manipulando ele totalmente no PHP.</p>
<p>Para obter o XAJAX acesse <a title="Xajax Project" href="http://www.xajaxproject.org " target="_blank" onclick="urchinTracker('/outgoing/www.xajaxproject.org?referer=');">XAJAX Project</a>.</p>
<p>Qualquer dúvida comentem!</p>
<p>Referencia:</p>
<ul>
<li><a title="Xajax Project" href="http://www.xajaxproject.org " target="_blank" onclick="urchinTracker('/outgoing/www.xajaxproject.org?referer=');">XAJAX Project</a></li>
</ul>
<p>Arquivos:</p>
<ul>
<li><a title="Exemplos xajax" href="arqs/exemplos.zip">Exemplos</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://crisdev.eti.br/trabalhando-com-xajax.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

