<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Jefferson Luís - Programador PHP (Blumenau SC)</title>
	
	<link>http://www.jeffersonluis.com/blog</link>
	<description>A evolução se limita aos nossos conhecimentos.</description>
	<lastBuildDate>Fri, 11 May 2012 13:24:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/JeffersonLus-ProgramadorPhpblumenauSc" /><feedburner:info uri="jeffersonlus-programadorphpblumenausc" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Magento Community 1.7</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/qKMGwxr_k1w/</link>
		<comments>http://www.jeffersonluis.com/blog/2012/05/11/magento-community-1-7/#comments</comments>
		<pubDate>Fri, 11 May 2012 13:24:00 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[gratuito]]></category>
		<category><![CDATA[Magento]]></category>
		<category><![CDATA[nova versão]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=420</guid>
		<description><![CDATA[Recentemente foi lançada a versão 1.7 do Magento Community e com ela algumas novidades bem interessantes, neste post vamos abordar algumas das principais mudanças. Tema em HTML5 para dispositivos móveis A compatibilidade com HTML5 torna a sua loja virtual compatível com &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2012/05/11/magento-community-1-7/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/nioiVHpnxYflyZDadrZ1u38DFsI/0/da"><img src="http://feedads.g.doubleclick.net/~a/nioiVHpnxYflyZDadrZ1u38DFsI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/nioiVHpnxYflyZDadrZ1u38DFsI/1/da"><img src="http://feedads.g.doubleclick.net/~a/nioiVHpnxYflyZDadrZ1u38DFsI/1/di" border="0" ismap="true"></img></a></p><p>Recentemente foi lançada a versão 1.7 do Magento Community e com ela algumas novidades bem interessantes, neste post vamos abordar algumas das principais mudanças.</p>
<h4>Tema em HTML5 para dispositivos móveis</h4>
<p>A compatibilidade com HTML5 torna a sua loja virtual compatível com celulares, tablets e quaisquer outros dispositivos móveis, facilitando de vez o ingresso no mobile commerce.</p>
<p>Esta é provavelmente a principal justificativa para se migrar para a nova versão.</p>
<h4>Nova API Rest facilita integração com sistemas terceiros</h4>
<p>A nova API Rest permitirá aos desenvolvedores integrarem com facilidade à loja virtual a outros sistemas.</p>
<p>É uma ótima alternativa às integrações com as API SOAP e XML-RPC e ao desenvolvimento de extensions específicos, ambos muito mais trabalhosos e mais caros.</p>
<p>A primeira versão da API permite o gerenciamento de produtos e clientes e consulta de pedidos.</p>
<h4>Mais novidades</h4>
<p>As novas versões incluem várias novidades, entre elas:</p>
<ul>
<li>Preço diferente por grupo de cliente</li>
<li>Geração automática de coupons de desconto</li>
<li>Múltiplas listas de desejo</li>
<li>Novas regras de produtos para up-selling e cross-selling</li>
<li>Novo segmento de cliente: desconhecido (unknown)</li>
<li>Funcionalidade de Backup e Rollback</li>
<li>Funcionalidade de CAPTCHA para reduzir os registros de spam</li>
</ul>
<p><a title="Magento Enterprise 1.12 and Community 1.7 Now Available!" href="http://www.magentocommerce.com/blog/comments/magento-enterprise-112-and-community-17-now-available/" target="_blank">Confira aqui todas as novidades da nova versão</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2012%2F05%2F11%2Fmagento-community-1-7%2F&amp;title=Magento%20Community%201.7" id="wpa2a_2"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/qKMGwxr_k1w" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2012/05/11/magento-community-1-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2012/05/11/magento-community-1-7/</feedburner:origLink></item>
		<item>
		<title>PHP – Evolução cronológica</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/JxPLF8kfCfo/</link>
		<comments>http://www.jeffersonluis.com/blog/2012/05/10/php-evolucao-cronologica/#comments</comments>
		<pubDate>Thu, 10 May 2012 13:19:51 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[andi gurmans]]></category>
		<category><![CDATA[história]]></category>
		<category><![CDATA[surgimento]]></category>
		<category><![CDATA[zeev suraski]]></category>
		<category><![CDATA[zend]]></category>
		<category><![CDATA[zend engine]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=412</guid>
		<description><![CDATA[Recentemente estive estudando um pouco sobre a história do php e gostaria de compartilhar uma pequena evolução cronológica que fiz durante meus estudos. 1994/Outono &#8211; Criação da primeira versão por Rasmus Lerdorf, na época chamada de PHP/FI. 1995/Junho &#8211; Disponibilizada &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2012/05/10/php-evolucao-cronologica/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/wsjvRSmIAaVLoslKm1_NeEKraIY/0/da"><img src="http://feedads.g.doubleclick.net/~a/wsjvRSmIAaVLoslKm1_NeEKraIY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/wsjvRSmIAaVLoslKm1_NeEKraIY/1/da"><img src="http://feedads.g.doubleclick.net/~a/wsjvRSmIAaVLoslKm1_NeEKraIY/1/di" border="0" ismap="true"></img></a></p><div>Recentemente estive estudando um pouco sobre a história do php e gostaria de compartilhar uma pequena evolução cronológica que fiz durante meus estudos.</div>
<div><span style="line-height: 22px;"><strong><br />
</strong></span></div>
<ul>
<li><span style="line-height: 22px;"><span style="font-size: small;"><strong>1994/Outono</strong></span> &#8211; Criação da primeira versão por Rasmus Lerdorf, na época chamada de <span style="color: #808080;"><strong>PHP/FI</strong></span>.</span></li>
<li><span style="line-height: 22px;"><span style="font-size: small;"><strong>1995/Junho</strong></span> &#8211; Disponibilizada ao publico para sugestões e correções de bugs.</span></li>
<li><span style="line-height: 22px;"><span style="font-size: small;"><strong>1997/Novembro</strong></span> &#8211; Lançado sua segunda versão <span style="color: #808080;"><strong>PHP/FI 2</strong></span>.</span></li>
<li><span style="line-height: 22px;"><span style="font-size: small;"><strong>1998/Junho</strong></span> -<span style="color: #808080;"> <strong>Andi Gutmans</strong></span> e </span><span style="line-height: 22px;"><span style="color: #808080;"><strong>Zeev Suraski</strong></span> de <a title="Tel Aviv" href="http://pt.wikipedia.org/wiki/Tel_Aviv">Tel Aviv/Israel</a> baseando-se na segunda versão reescrevem todo o código e lanção o <span style="color: #808080;"><strong>PHP 3</strong></span>, retirando a referencia FI(Forms Interpreter/Interpretador de formulários) do nome, por não fazer mais sentido devido a sua maior abrangência.</span></li>
<li><span style="line-height: 22px;"><span style="font-size: small;"><strong>2000/Maio</strong></span> -  Lançado sua quarta versão <span style="color: #808080;"><strong>PHP 4</strong></span>, com seu núcleo de interpretação totalmente reescrito e nomeado de <span style="color: #808080;"><strong>Zend Engine</strong></span>.</span></li>
<li><span style="line-height: 22px;"><span style="font-size: small;"><strong>2004/Julho</strong></span> - Lançado sua quinta versão <span style="color: #808080;"><strong>PHP 5</strong></span>, com uma nova versão do núcleo <span style="color: #808080;"><strong>Zend Engine 2</strong></span>, assim melhorando o suporte a orientação a objetos.</span></li>
</ul>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2012%2F05%2F10%2Fphp-evolucao-cronologica%2F&amp;title=PHP%20%E2%80%93%20Evolu%C3%A7%C3%A3o%20cronol%C3%B3gica" id="wpa2a_4"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/JxPLF8kfCfo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2012/05/10/php-evolucao-cronologica/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2012/05/10/php-evolucao-cronologica/</feedburner:origLink></item>
		<item>
		<title>Mysql – Stored Procedures</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/h1dfGrb2kEI/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/12/08/mysql-stored-procedures/#comments</comments>
		<pubDate>Thu, 08 Dec 2011 18:15:26 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[begin]]></category>
		<category><![CDATA[delimiter]]></category>
		<category><![CDATA[função]]></category>
		<category><![CDATA[function]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[procedure]]></category>
		<category><![CDATA[processo]]></category>
		<category><![CDATA[stored]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=404</guid>
		<description><![CDATA[Mais um post de referencia sem muito bla, bla, bla.. Criando uma procedure Chamando a procedure Caso ao executar a chamada da procedure ela não retorne o resultado da consulta, certifique-se que o delimitador está no formato padrão]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/DdpaP_H9ZkAMhf1BlNXboK90ulc/0/da"><img src="http://feedads.g.doubleclick.net/~a/DdpaP_H9ZkAMhf1BlNXboK90ulc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/DdpaP_H9ZkAMhf1BlNXboK90ulc/1/da"><img src="http://feedads.g.doubleclick.net/~a/DdpaP_H9ZkAMhf1BlNXboK90ulc/1/di" border="0" ismap="true"></img></a></p><p>Mais um post de referencia sem muito bla, bla, bla..</p>
<p>Criando uma procedure</p>
<pre class="brush: sql; title: ; notranslate">
DELIMITER &amp;&amp;
     CREATE PROCEDURE remover_categoria (IN cat VARCHAR)
	BEGIN
		DELETE FROM categorylinks WHERE cat_id = cat;
		UPDATE text SET status = 'DELETADO' where cat_id = cat;
	END
   &amp;&amp;
</pre>
<p>Chamando a procedure</p>
<pre class="brush: sql; title: ; notranslate">
CALL remover_categoria(36);
</pre>
<p>Caso ao executar a chamada da procedure ela não retorne o resultado da consulta, certifique-se que o delimitador está no formato padrão</p>
<pre class="brush: sql; title: ; notranslate">
DELIMITER ;
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F12%2F08%2Fmysql-stored-procedures%2F&amp;title=Mysql%20%E2%80%93%20Stored%20Procedures" id="wpa2a_6"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/h1dfGrb2kEI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/12/08/mysql-stored-procedures/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/12/08/mysql-stored-procedures/</feedburner:origLink></item>
		<item>
		<title>PHP – Tempo de execução</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/axzergn00Nw/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/12/07/php-tempo-de-execucao/#comments</comments>
		<pubDate>Wed, 07 Dec 2011 11:10:56 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[microtime]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Tempo]]></category>
		<category><![CDATA[time]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=400</guid>
		<description><![CDATA[Script que calcula o tempo que a página levou para ser processada. Deve-se incluir o arquivo exec_time.php no início do script, chamar a função startExec() e no final do script chamar a função endExec(). exemplo de uso:]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/r-NPHz22665W18EPaqM8bTl7dho/0/da"><img src="http://feedads.g.doubleclick.net/~a/r-NPHz22665W18EPaqM8bTl7dho/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/r-NPHz22665W18EPaqM8bTl7dho/1/da"><img src="http://feedads.g.doubleclick.net/~a/r-NPHz22665W18EPaqM8bTl7dho/1/di" border="0" ismap="true"></img></a></p><p>Script que calcula o tempo que a página levou para ser processada.</p>
<p>Deve-se incluir o arquivo exec_time.php no início do script, chamar a função startExec() e no final do script chamar a função endExec().</p>
<pre class="brush: php; title: ; notranslate">
   /*
    *
    * @file: exec_time.php
    *
    * @author: Jefferson Luis
    *
    * @date: 07/12/2011
    *
    * @description: calculates the time of execution of a script
    *
    * @use: include this file in the top of the script, call function startExec() and
    * the end of script call the function endExec().
    *
    * Function endExec print results in the screen.
    *
    */

   global $time;

   /* Get current time */
   function getTime(){
      $microtime = explode(&quot; &quot;, microtime());
      $time = $microtime[0] + $microtime[1];
      return $time;
   }

   /* Calculate start time */
   function startExec(){
      global $time;
      $time = getTime();
   }

   /*
    * Calculate end time of the script,
    * execution time and print
    * result in the screen
    */
   function endExec(){
      global $time;
      $finalTime = getTime();
      $execTime = $finalTime - $time;
      echo 'Execution time: ' . number_format($execTime, 6) . ' ms';
   }
</pre>
<p>exemplo de uso:</p>
<pre class="brush: php; title: ; notranslate">
include('exec_time.php');
startExec();

for($i=0;$i&lt;1000;$i++){

}

endExec();
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F12%2F07%2Fphp-tempo-de-execucao%2F&amp;title=PHP%20%E2%80%93%20Tempo%20de%20execu%C3%A7%C3%A3o" id="wpa2a_8"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/axzergn00Nw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/12/07/php-tempo-de-execucao/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/12/07/php-tempo-de-execucao/</feedburner:origLink></item>
		<item>
		<title>PHP – Compressão de Strings</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/wWBY_cli1kc/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/10/24/php-compressao-de-strings/#comments</comments>
		<pubDate>Mon, 24 Oct 2011 18:03:37 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[compactar]]></category>
		<category><![CDATA[Compressão]]></category>
		<category><![CDATA[string]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=387</guid>
		<description><![CDATA[Em PHP é possível comprimir grandes strings utiliando apenas seus próprios recursos. Vejamos como utilizar as funções gzcompress() e gzuncompress():]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/UCUe9Eqlgm_SduU8EvUG2MbeLYk/0/da"><img src="http://feedads.g.doubleclick.net/~a/UCUe9Eqlgm_SduU8EvUG2MbeLYk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/UCUe9Eqlgm_SduU8EvUG2MbeLYk/1/da"><img src="http://feedads.g.doubleclick.net/~a/UCUe9Eqlgm_SduU8EvUG2MbeLYk/1/di" border="0" ismap="true"></img></a></p><p>Em PHP é possível comprimir grandes strings utiliando apenas seus próprios recursos. Vejamos como utilizar as funções gzcompress() e gzuncompress():</p>
<pre class="brush: php; title: ; notranslate">
$ String = “Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc ut id elit ultricies mi adipiscing. Nulla facilisi. Praesent pulvinar, vel sapien feugiat vestibulum, nulla dui pretium orci, ultricies non elit lacus ante QUIS. Lorem ipsum dolor sit amet, elit adipiscing consectetur. Aliquam pretium ullamcorper urna QUIS iaculis. Etiam ac massa sed turpis tempor luctus. Curabitur sed NIBH eu elit mollis congue. Diam ipsum Praesent, consectetur vitae Ornare a, aliquam um nunc. Em ID magna Pellentesque Tellus adipiscing posuere. Sed non mi metus, no lacinia augue. Sed nisi magna, Ornare em mollis em, mollis sed nunc. Etiam no justo no leo congue mollis. Nullam em neque eget metus hendrerit scelerisque eu non enim. Ut malesuada lacus eu nulla Bibendum id euismod urna sodales. “;

$comprimindo = gzcompress ($string);
echo “Tamanho Original:”. strlen ($ string) “\ n”.;

/* Imprime
Tamanho original: 800
*/

echo “Tamanho comprimido:”. strlen ($ comprimindo) “\ n”.;

/* Imprime
Tamanho comprimido: 418
*/

// Coloca-lo de volta
$original = gzuncompress ($ comprimindo);
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F10%2F24%2Fphp-compressao-de-strings%2F&amp;title=PHP%20%E2%80%93%20Compress%C3%A3o%20de%20Strings" id="wpa2a_10"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/wWBY_cli1kc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/10/24/php-compressao-de-strings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/10/24/php-compressao-de-strings/</feedburner:origLink></item>
		<item>
		<title>PHPCloud</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/hWdwJ_F3XV4/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/10/21/phpcloud/#comments</comments>
		<pubDate>Fri, 21 Oct 2011 12:08:00 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[nuvem]]></category>
		<category><![CDATA[PHPCloud]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=380</guid>
		<description><![CDATA[A Zend anunciou nessa terça-feira (18 de Outubro), durante a ZendCon 2001 a plataforma de desenvolvimento na nuvem phpcloud.com. A Zend é sem dúvidas a maior contribuidora na melhoria constante no desenvolvimento da linguagem PHP, que hoje é a linguagem mais &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2011/10/21/phpcloud/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/qKId4kyxTS0YnKrMJT9LeiOEajU/0/da"><img src="http://feedads.g.doubleclick.net/~a/qKId4kyxTS0YnKrMJT9LeiOEajU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/qKId4kyxTS0YnKrMJT9LeiOEajU/1/da"><img src="http://feedads.g.doubleclick.net/~a/qKId4kyxTS0YnKrMJT9LeiOEajU/1/di" border="0" ismap="true"></img></a></p><p><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/10/php-cloud.png"><img class="aligncenter size-full wp-image-381" title="php-cloud" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/10/php-cloud.png" alt="" width="600" height="100" /></a></p>
<p>A Zend anunciou nessa terça-feira (18 de Outubro), durante a ZendCon 2001 a plataforma de desenvolvimento na nuvem <a href="http://www.phpcloud.com/" target="_blank">phpcloud.com</a>.</p>
<p>A Zend é sem dúvidas a maior contribuidora na melhoria constante no desenvolvimento da linguagem PHP, que hoje é a linguagem mais usada na Web e a quarta mais utilizada no mundo, e realmente, faltava aos desenvolvedores PHP uma plataforma dessas. A Microsoft já ilustrou como é valioso o desenvolvimento em nuvem quando deixou o Visual Studio tools disponível para uso colaborativo no<a href="http://www.microsoft.com/windowsazure/" target="_blank">Windows Azure</a>. <a href="http://www.heroku.com/" target="_blank">Heroku</a> e <a href="http://www.engineyard.com/" target="_blank">Engine Yard</a> faz a mesma coisa pelos desenvolvedores Ruby. O pessoal do Java tem <a href="http://www.cloudfoundry.com/" target="_blank">VMWare`s Cloud Foundry</a> e a IBM tem o <a href="http://www.ibm.com/developerworks/cloud/devtest.html" target="_blank">Smart Cloud</a>.</p>
<p>Agora os desenvolvedores PHP poderão contar com sua própria plataforma de desenvolvimento nas nuvens. Além de fornecer ferramentas a Zend vai oferecer aos desenvolvedores a opção de implementar suas aplicações finalizadas para Amazon`s EC2, IBM SmartCloud, Rackspace, Red Hat Cloud`s Foundation.</p>
<p>A plataforma oferece uma série de ferramentas que eu vou resumir aqui em duas coisas: Zend Developer Cloud e Zend Application Fabric.</p>
<p><strong>Zend Developer Cloud</strong> é um ambiente na nuvem para tornar o desenvolvimento mais rápido e mais eficiente. Ele inclui um conjunto de ferramentas PHP, recursos avançados de depuração e ferramentas de colaboração. Não precisa ser instalado, e é gratuito.</p>
<p><strong>Zend Application</strong> Fabric permite executar o aplicativo em qualquer infraestrutura de nuvem suportada, incluindo Amazon, Rackspace, IBM SmartCloud e on-premises. Ele inclui várias tecnologias baseadas no Zend Server para melhorar a performance dos aplicativos e minimizar o uso de recursos. Também permite aumentar ou diminuir a quantidade de servidores alocados sem perda de sessão dos usuários. O conjunto é completado com ferramentas de monitoramento e diagnóstico.</p>
<p>Muita gente deve se perguntar o porque do investimento da Zend em uma plataforma dessa para os desenvolvedores PHP. Simples amigos, a Zend está apostando cada vez mais na adoção de PaaS (Plataform as a Service) pelas empresas e quer assegurar sua fatia nesse mercado. Integrar o Zend Studio com essa camada de Cloud Computing é essencial pra assegurar essa fatia tão desejada.</p>
<p>Abaixo segue um vídeo mostrando como criar uma aplicação no phpcloud.com:<br />
<iframe src="http://www.youtube.com/embed/LOZPibbli9Q" frameborder="0" width="560" height="315"></iframe></p>
<p>Fonte: Mamura</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F10%2F21%2Fphpcloud%2F&amp;title=PHPCloud" id="wpa2a_12"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/hWdwJ_F3XV4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/10/21/phpcloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/10/21/phpcloud/</feedburner:origLink></item>
		<item>
		<title>CHUVOMETRO</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/GExu7k2CMfY/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/08/10/chuvometro/#comments</comments>
		<pubDate>Wed, 10 Aug 2011 17:51:00 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Utilidades]]></category>
		<category><![CDATA[alerta]]></category>
		<category><![CDATA[atencao]]></category>
		<category><![CDATA[blumenau]]></category>
		<category><![CDATA[cota]]></category>
		<category><![CDATA[cotas]]></category>
		<category><![CDATA[cotas ruas]]></category>
		<category><![CDATA[emergencia]]></category>
		<category><![CDATA[enchente]]></category>
		<category><![CDATA[enchentes]]></category>
		<category><![CDATA[itajai acu]]></category>
		<category><![CDATA[nivel]]></category>
		<category><![CDATA[nivel do rio]]></category>
		<category><![CDATA[rio]]></category>
		<category><![CDATA[rua]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=367</guid>
		<description><![CDATA[http://www.jeffersonluis.com/chuvometro Faz um tempo que eu estava querem terminar esse sistema de monitoramento, mas consegui finalizar somente nessa semana, ele é simples mais muito útil para quem mora em Blumenau e gosta ou precisa acompanhar o nível do rio Itajai açu.Nesse sistema recebemos o nível do &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2011/08/10/chuvometro/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/L4ouVHT3DfyM1Ps-fnXrZUDL6gU/0/da"><img src="http://feedads.g.doubleclick.net/~a/L4ouVHT3DfyM1Ps-fnXrZUDL6gU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/L4ouVHT3DfyM1Ps-fnXrZUDL6gU/1/da"><img src="http://feedads.g.doubleclick.net/~a/L4ouVHT3DfyM1Ps-fnXrZUDL6gU/1/di" border="0" ismap="true"></img></a></p><p style="text-align: center;"><span style="font-size: medium;"><a href="http://jeffersonluis.com/chuvometro/">http://www.jeffersonluis.com/chuvometro</a></span></p>
<p>Faz um tempo que eu estava querem terminar esse sistema de monitoramento, mas consegui finalizar somente nessa semana, ele é simples mais muito útil para quem mora em Blumenau e gosta ou precisa acompanhar o nível do rio Itajai açu.Nesse sistema recebemos o nível do rio de duas fontes diferentes mantendo assim o nível mais atualizado possível.</p>
<p><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/Screenshot-1.jpg"><img class="size-full wp-image-368 aligncenter" title="Screenshot-1" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/Screenshot-1.jpg" alt="" width="550" height="508" /></a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F08%2F10%2Fchuvometro%2F&amp;title=CHUVOMETRO" id="wpa2a_14"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/GExu7k2CMfY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/08/10/chuvometro/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/08/10/chuvometro/</feedburner:origLink></item>
		<item>
		<title>O Zend Framework</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/769mC-pCDXc/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/08/04/o-zend-framework/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 17:35:48 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[fox]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[google code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[sourceforge]]></category>
		<category><![CDATA[technorati]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=350</guid>
		<description><![CDATA[Sobre o Zend Framework Zend Framework é baseado na simplicidade, nas melhores práticas orientada a objeto,  no licenciamento corporativo amigável e com uma base de código ágil e rigorosamente testa. Zend Framework é focado na construção de projetos Web mais &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2011/08/04/o-zend-framework/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/CmzEZ9zUgjZgIOYWZgPw7f5ed9w/0/da"><img src="http://feedads.g.doubleclick.net/~a/CmzEZ9zUgjZgIOYWZgPw7f5ed9w/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/CmzEZ9zUgjZgIOYWZgPw7f5ed9w/1/da"><img src="http://feedads.g.doubleclick.net/~a/CmzEZ9zUgjZgIOYWZgPw7f5ed9w/1/di" border="0" ismap="true"></img></a></p><p><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/ZendFramework-logo.png"><img class="size-large wp-image-355 aligncenter" title="ZendFramework-logo" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/ZendFramework-logo-1024x271.png" alt="" width="695" height="183" /></a></p>
<p><strong>Sobre o Zend Framework</strong></p>
<p><strong></strong>Zend Framework é baseado na simplicidade, nas melhores práticas orientada a objeto,  no licenciamento corporativo amigável e com uma base de código ágil e rigorosamente testa. Zend Framework é focado na construção de projetos Web mais seguros, confiáveis e modernos, contendo APIs amplamente disponíveis de fornecedores líderes como Google , Amazon , Yahoo! , Flickr.</p>
<p><strong>Produtiva e extrema simplicidade</strong></p>
<p><strong></strong>Nós projetamos Zend Framework com a simplicidade em mente. Centrando-se sobre as funcionalidades mais comumente necessários, mantemos o espírito simplificado da programação PHP, reduzir drasticamente a curva de aprendizado.</p>
<p><strong>Características recentes para o desenvolvimento web</strong></p>
<ul>
<li>AJAX com apoio através de JSON &#8211; atendendo as facilidades que os usuários esperam</li>
<li>Pesquisa &#8211; uma edição nativa do PHP com o padrão da indústria de buscas, usando o motor de busca Lucene</li>
<li>Syndication - formatos de dados com acesso fácil para sua aplicação Web 2.0</li>
<li>Web Services &#8211; Zend Framework pretende ser o local principal para publicação de web services</li>
<li>Biblioteca de classes PHP 5 orientada a objeto de alta qualidade - Aplicando as melhores práticas, como padrões de projeto, testes unitários, e baixo acoplamento.</li>
</ul>
<p><span id="more-350"></span></p>
<p><strong>Cases</strong></p>
<p>Muitas organizações têm adotado Zend Framework para construir aplicações PHP</p>
<p><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/fox_logo_lg.png"><img class="size-full wp-image-351 aligncenter" title="fox_logo_lg" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/fox_logo_lg.png" alt="" width="232" height="111" /></a></p>
<p><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/magento_logo_lg.gif"><img class="size-full wp-image-352 aligncenter" title="magento_logo_lg" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/magento_logo_lg.gif" alt="" width="328" height="100" /></a></p>
<p><strong>Alguns <strong>estatísticas interessantes</strong></strong></p>
<ul>
<li>Mais de 10 milhões de downloads</li>
<li>Mais de 500 contribuintes</li>
<li>Mais de 1000 páginas do nosso Guia de Referência</li>
<li>Mais de 500 exemplos em nosso Guia de Referência</li>
<li>Quase 6 milhões de visitas pelo Google</li>
<li>Mais de 900 cases de sucesso no <a href="http://technorati.com">Technorati</a></li>
<li>Mais de 120 projetos com baseados em Zend Framework no SourceForge</li>
<li>Mais de 280 projetos com baseados em Zend Framework no Google Code</li>
<li>Mais de 4000 problemas resolvidos em nosso <a href="http://framework.zend.com/issues">Issue Tracker</a></li>
</ul>
<p style="text-align: right;"><span style="color: #888888;">FONTE: ZENDFRAMEWORK</span></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F08%2F04%2Fo-zend-framework%2F&amp;title=O%20Zend%20Framework" id="wpa2a_16"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/769mC-pCDXc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/08/04/o-zend-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/08/04/o-zend-framework/</feedburner:origLink></item>
		<item>
		<title>Facebook – Criando uma lista de amigos</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/v8hHSTk4eGc/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/08/03/facebook-criando-uma-lista-de-amigos/#comments</comments>
		<pubDate>Wed, 03 Aug 2011 12:37:08 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[amigos]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[grupo]]></category>
		<category><![CDATA[lista]]></category>
		<category><![CDATA[listar]]></category>
		<category><![CDATA[listas]]></category>
		<category><![CDATA[organizar]]></category>
		<category><![CDATA[separar]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=345</guid>
		<description><![CDATA[Buenas, aqui vai mais uma dica para você turbinar seu facebook. Provavelmente você já deve ter visto uma lista de amigos com o nome personalizado como &#8220;galera da facul&#8221; &#8220;futeba&#8221;, isso é nada mais do que uma forma de organizar &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2011/08/03/facebook-criando-uma-lista-de-amigos/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Vh07T03sC5RhW3hVgrSANlk8_CA/0/da"><img src="http://feedads.g.doubleclick.net/~a/Vh07T03sC5RhW3hVgrSANlk8_CA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Vh07T03sC5RhW3hVgrSANlk8_CA/1/da"><img src="http://feedads.g.doubleclick.net/~a/Vh07T03sC5RhW3hVgrSANlk8_CA/1/di" border="0" ismap="true"></img></a></p><p>Buenas, aqui vai mais uma dica para você turbinar seu facebook. Provavelmente você já deve ter visto uma lista de amigos com o nome personalizado como &#8220;galera da facul&#8221; &#8220;futeba&#8221;, isso é nada mais do que uma forma de organizar seus amigos.</p>
<p>Aqui podemos ver como é exibida uma lista de amigos no perfil do usuário:</p>
<p><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/grupo.png"><img class="alignnone size-full wp-image-346" title="lista de amigos" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/grupo.png" alt="" width="686" height="713" /></a></p>
<p>&nbsp;</p>
<p>Criando uma nova lista de amigos:</p>
<p><span id="more-345"></span></p>
<p>Perfil &gt; Editar perfil &gt; Amigos e família &gt; <em><strong>Criar nova lista</strong></em></p>
<p><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/lista2.png"><img class="alignnone size-full wp-image-347" title="lista2" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/08/lista2.png" alt="" width="726" height="735" /></a></p>
<p>Agora é só criar um nome para a lista e adicionar seus amigos a ela.<br />
Como podemos ver termos também a opção de criar uma lista a partir de um grupo, fazendo isso todos os usuários do grupo iram integrar sua nova lista de amigos.</p>
<p>Espero que seja util. <em>Well, be seeing you</em></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F08%2F03%2Ffacebook-criando-uma-lista-de-amigos%2F&amp;title=Facebook%20%E2%80%93%20Criando%20uma%20lista%20de%20amigos" id="wpa2a_18"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/v8hHSTk4eGc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/08/03/facebook-criando-uma-lista-de-amigos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/08/03/facebook-criando-uma-lista-de-amigos/</feedburner:origLink></item>
		<item>
		<title>PHP 5.4 alpha1 released</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/pTmRXjs47WA/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/07/25/php-5-4-alpha1-released/#comments</comments>
		<pubDate>Mon, 25 Jul 2011 20:51:39 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[5.4]]></category>
		<category><![CDATA[alpha1]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[recurso]]></category>
		<category><![CDATA[released]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=340</guid>
		<description><![CDATA[Um dos novos recursos do PHP 5.4 é o &#8220;array dereferencing support&#8221; (derreferenciamento de array). Vou demostrar em um exemplo como este recurso funciona:]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/v15rpWQPO2Q1RkMUH_T12FD8CZQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/v15rpWQPO2Q1RkMUH_T12FD8CZQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/v15rpWQPO2Q1RkMUH_T12FD8CZQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/v15rpWQPO2Q1RkMUH_T12FD8CZQ/1/di" border="0" ismap="true"></img></a></p><p>Um dos novos recursos do PHP 5.4 é o &#8220;array dereferencing support&#8221; (derreferenciamento de array).</p>
<p>Vou demostrar em um exemplo como este recurso funciona:</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
function cria_array() {
    return array(25, 84, 74);
}

$x = cria_array()[1]; // $x recebe 84
?&gt;
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F07%2F25%2Fphp-5-4-alpha1-released%2F&amp;title=PHP%205.4%20alpha1%20released" id="wpa2a_20"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/pTmRXjs47WA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/07/25/php-5-4-alpha1-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/07/25/php-5-4-alpha1-released/</feedburner:origLink></item>
		<item>
		<title>Cursos online gratuitos</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/jHU_6ywdJWo/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/07/20/cursos-online-gratuitos/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 17:38:28 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Utilidades]]></category>
		<category><![CDATA[curso]]></category>
		<category><![CDATA[cursos]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[gratuitos]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=336</guid>
		<description><![CDATA[Harvard O que oferece: vários conteúdos gratuitos. A escola de Medicina, por exemplo, tem site próprio com materiais de apoio (clique aqui). No site sobre educação à distância, os alunos podem ter acesso às primeiras aulas dos cursos que são &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2011/07/20/cursos-online-gratuitos/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/v6V01QucrfUkW_6z1oOUW4_6he8/0/da"><img src="http://feedads.g.doubleclick.net/~a/v6V01QucrfUkW_6z1oOUW4_6he8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/v6V01QucrfUkW_6z1oOUW4_6he8/1/da"><img src="http://feedads.g.doubleclick.net/~a/v6V01QucrfUkW_6z1oOUW4_6he8/1/di" border="0" ismap="true"></img></a></p><p><span style="font-size: 13px; font-weight: normal;"><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/harvard.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/harvard.jpg" alt="" width="200" height="223" /></a></span></p>
<div>
<p><strong>Harvard</strong><br />
<strong> </strong></p>
<p><strong>O que oferece:</strong> vários conteúdos gratuitos. A escola de Medicina, por exemplo, tem site próprio com materiais de apoio (<a href="http://mycourses.med.harvard.edu/public/">clique aqui</a>). No site sobre educação à distância, os alunos podem ter acesso às primeiras aulas dos cursos que são oferecidos parte online, parte presencialmente. O acesso aos vídeos é gratuito, mas para fazer o curso inteiro, é preciso pagar. Também oito cursos completos, gratuitamente, na seção “open learning”, onde é possível assistir a aulas com temas tão diversos quanto as tradições e transformações da China, álgebra abstrata, bits e introdução intensiva à ciência da computação.<br />
<strong> </strong></p>
<p><strong>Como fazer:</strong> na seção “educação à distância” (distance education) escolha o curso de seu interesse e acesse a primeira aula (lecture 1). Mas o conteúdo integral realmente gratuito está disponível na opção “open learning”, que tem oito cursos integrais, com vídeos e slides informativos.</p>
<p><strong>Links: clique <a href="http://www.extension.harvard.edu/openlearning/">aqui</a> ou <a href="http://www.extension.harvard.edu/distance-education/online-course-offerings">aqui</a></strong></p>
<p><strong><span id="more-336"></span></strong></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/mit.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/mit-300x92.jpg" alt="" width="300" height="92" /></a></p>
<p><strong>Massachusetts Institute of Technology (MIT)</strong><br />
<strong> </strong></p>
<p><strong>O que oferece:</strong> conteúdos de cursos de graduação e pós-graduação. O aluno tem acesso a textos, testes e vídeos de 36 áreas diferentes das ciências exatas e humanas. No total, estão disponíveis conteúdos de 2 mil cursos. Todos os textos estão em inglês. O MIT não concede diplomas ou certificados porque o material disponível pode não refletir o conteúdo completo dos cursos. O material online do MIT deve ser visto como base ou complemento de pesquisas em andamento e para cursos regulares. E também para tirar a curiosidade sobre o método de trabalho do instituto de tecnologia.<br />
<strong> </strong></p>
<p><strong>Como fazer:</strong> não é preciso fazer inscrição ou matrícula. Basta acessar o site, buscar em “courses” (cursos) o conteúdo do departamento que mais lhe interessar e seguir as instruções. Os textos estão disponíveis em arquivos do formato pdf.<br />
<strong> </strong></p>
<p><strong>Link:</strong> clique <a href="http://ocw.mit.edu/courses/">aqui</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/005.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/005-300x297.jpg" alt="" width="300" height="297" /></a></p>
<p><strong>University of California – Berkeley</strong><br />
<strong> </strong></p>
<p><strong>O que oferece:</strong> disponibiliza, através de um site próprio e de diferentes canais do YouTube, vídeos com cursos de física, estatística, química, sociologia, ciências da computação, entre outros. O acesso a todos os vídeos é gratuito e não exige inscrição ou cadastro. É possível assistir, por exemplo, ao curso de introdução ao uso de probabilidade e estatísticas para os negócios do professor Philip Stark, dividido em 25 aulas que duram até uma hora e 25 minutos. Berkeley foi responsável por gerar 52 prêmios Nobel, recebidos por professores, alunos e ex-alunos da universidade.<br />
<strong> </strong></p>
<p><strong>Como fazer:</strong> acesse o <a href="http://video.google.com/ucberkeley.html">site próprio da universidade</a> ou procure o conteúdo desejado nos canais <a href="http://www.youtube.com/user/UCBerkeley">UCBerkeley</a>e <a href="http://www.youtube.com/user/UCBerkeleyEvents">UCBerkeleyEvents no YouTube.</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/stanford.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/stanford-196x300.jpg" alt="" width="196" height="300" /></a></p>
<p><strong>Stanford</strong></p>
<p><strong>O que oferece</strong>: disponibiliza dois canais para acessar o conteúdo de alguns de seus cursos. A primeira opção é o site específico da universidade no iTunes U. A segunda é o projeto Stanford Engineering Everywhere (engenharia de Stanford em todas as partes), que disponibiliza o conteúdo completo, incluindo o vídeo das aulas, de alguns dos cursos da universidade. No total, são 13 cursos das áreas de introdução à ciência da computação, inteligência artificial, sistemas lineares e otimização, e conteúdos adicionais aos cursos de engenharia. Nesta última opção é possível acessar, por exemplo, um curso de programação de aplicativos para iPhone dividido em 45 vídeos.<br />
<strong>Como fazer:</strong> acessar o canal específico de Stanford no iTunes U ou procurar os conteúdos dos cursos gratuitos disponíveis no <a href="http://see.stanford.edu/">Stanford Engineering Everywhere</a>. É preciso ter o programa iTunes instalado para conseguir acessar aos conteúdos gratuitamente.<br />
Link do iTunes: clique <a href="http://itunes.stanford.edu/">aqui</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/oxford.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/oxford-250x300.jpg" alt="" width="250" height="300" /></a></p>
<p><strong>Oxford</strong></p>
<p><strong>O que oferece:</strong> diferentes conteúdos e discussões através de podcasts e webcasts, desde medicina, matemática, física até ciências sociais. São 2.864 conteúdos online, sendo que 932 deles têm licença de uso comum _ podem ser utilizados para a produção de artigos científicos e outros produtos, desde que citada a fonte original. Sobre o tema internet e comunicação, existem arquivos de audio no Oxford Institute Internet. A universidade também tem um canal no iTunes U e outro no YouTube, onde é há preciosidades como a discussão dos filósofos Marianne Talbot e Stephen Law sobre as teorias de Richard Dawkins, até uma aula integral que introduz conceitos básicos da filosofia ministrada por Peter Millican.</p>
<p><strong>Como fazer:</strong> acessar o site com os podcasts e procurar o conteúdo, acessando as diferentes divisões listadas no início da página. Abre uma página com diferentes centros de pesquisa, departamentos e institutos. Clique em “mostrar todos os detalhes dos itens de media” (“show full details of the media itens”) e acesse o conteúdo em “get audio”. Para acessar o conteúdo da universidade no iTunes U, é preciso ter o programa da Apple. Os vídeos no YouTube estão listados por tema.<br />
Links: <a href="http://webcast.oii.ox.ac.uk/">webcast</a> , <a href="http://podcasts.ox.ac.uk/">podcast</a> e <a href="http://www.youtube.com/user/oxford">YouTube</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/princeton.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/princeton-268x300.jpg" alt="" width="268" height="300" /></a></p>
<p><strong>Princeton</strong></p>
<p><strong>O que oferece:</strong> um banco de dados com vídeos que valem mais pela diversidade e pela curiosidade do que, propriamente, pelo fato de seus conteúdos se equipararem aos de cursos habituais. Na página de WebMedia é possível acessar um arquivo que começa em fevereiro de 1990, com um áudio de James Stewart rememorando o que a universidade fez por ele. O arquivo seguinte, também histórico e datado de 1998, mostra o professor Froma Zeitlin falando sobre a importância de relembrar o Holocausto. Alguns vídeos podem não funcionar corretamente. Princeton também tem um canal específico no YouTube onde, aí sim, estão disponíveis cursos completos em vídeo. Como a palestra de Leonard Susskind sobre a teoria das cordas e a relação dela com os principais conceitos modernos da física.</p>
<p><strong>Como fazer:</strong> acessar a seção de leituras (“lectures”) no site específico para WebMedia de <a href="http://hulk03.princeton.edu:8080/WebMedia/lectures/">Princeton.</a> É necessário ter atualizado o programa flash no navegador, o RealPlayer ou o WindowsMediaPlayer instalados. No canal do <a href="http://www.youtube.com/user/StanfordUniversity">YouTube</a>, basta acessar os conteúdos que forem de seu interesse.</p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/006.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/006-300x78.jpg" alt="" width="300" height="78" /></a></p>
<p><strong>Tokyo University</p>
<p></strong><strong>O que oferece:</strong> a principal universidade japonesa oferece um site com conteúdos gratuitos de diferentes áreas de conhecimento. Há textos e glossários que fazem referência ao conteúdo de cursos de economia, medicina, ciência da informação e tecnologia, engenharia, educação, entre outros. São oferecidas também leituras de diferentes áreas científicas, uma espécie de introdução a assuntos espinhosos. Todos os textos estão em inglês. A universidade de Tokyo também tem uma seção específica com cursos em vídeo e material de apoio escrito.</p>
<p><strong>Como fazer:</strong> acessar o site da universidade e, na lista de cursos (“course list”), procurar o assunto que interessa. A consulta aos materiais é gratuita, mas para abrir os conteúdos dos víeos é preciso ter o RealPlayer.</p>
<p>Para acessar a versão em inglês clique <a href="http://ocw.u-tokyo.ac.jp/english">aqui</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/yale1.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/yale1-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p><strong>Yale</strong></p>
<p><strong>O que oferece:</strong> se destaca por oferecer a íntegra de cursos com nomes famosos de diferentes áreas. Entre as opções, estão aulas como a de Capitalismo: Sucesso, Crise e Reforma, ministrada por Douglas W. Rae, veterano de Yale que dá aulas na universidade desde 1967; Os Fundamentos Morais da Política, do teórico e escritor Ian Shapiro; Fronteiras da Engenharia Biomédica, do premiado W. Mark Saltzman; e Teorias Financeiras, de John Geanakoplos, que recebeu os prêmios de economia Samuelson e Bodossaki. São vídeos gratuitos de cursos de 20 departamentos diferentes, de astronomia até espanhol e português, passando por química, história, economia, filosofia, física, entre outros. O site de Yale se diferencia por trazer transcrições completas de todas as aulas, além dos vídeos e áudios de cada seção.<br />
<strong>Como fazer:</strong> na página principal do <a href="http://oyc.yale.edu/">site</a>, é possível escolher entre os departamentos listados ou ir diretamente na seção “cursos” (courses). A página de cada curso traz informações básicas sobre o seu conteúdo e estrutura, assim como o perfil do professor responsável. Há como ler a transcrição da aula, escutá-la apenas em áudio ou acessar o vídeo.</p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/carnegie.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/carnegie-300x195.jpg" alt="" width="300" height="195" /></a></p>
<p><strong>Carnegie Mellon University</strong></p>
<p><strong>O que oferece: </strong>a Iniciativa de Aprendizagem Aberta (OLI da sigla em inglês) da universidade Carnegie Mellon disponibiliza cursos gratuitos de estatística para a engenharia, bioquímica, economia, biologia moderna, química, francês, design de comunicação visual, entre outros. O método segue uma linha tradicional de apresentação de conteúdos por capítulos, com textos em inglês.<br />
<strong>Como fazer:</strong> acessar o site e escolher um dos cursos disponíveis. Não é preciso cadastro, mas existe a opção de criar uma conta, sem custos, que permite registrar os resultados. Após preencher o formulário, o site dá opção de participar de uma pesquisa de avaliação dos cursos online. A resposta não influencia na permissão para o acesso aos conteúdos dos cursos.<br />
Link: <a href="http://oli.web.cmu.edu/openlearning/">openlearning</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/ted.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/ted-300x153.jpg" alt="" width="300" height="153" /></a></p>
<p><strong>TED</strong></p>
<p><strong>O que oferece:</strong> baseada nos pilares Tecnologia, Entretenimento e Design, a conferência TED, que teve a sua primeira edição em 1984, tornou-se uma das plataformas mais interessantes para reunir novas ideias. O site do evento, promovido duas vezes por ano, com uma edição nos Estados Unidos e outra no Reino Unido, abriga 964 palestras, segundo a última contagem, sobre temas diversos e relevantes. É possível buscar conteúdos por temas, palestrantes, pela data das apresentações ou pelos vídeos traduzidos em diferentes idiomas, entre os mais comentados da semana, e outras variáveis de busca. Na lista de personalidades, uma savana tão variada quanto J.J. Abrams, diretor e produtor de séries e filmes nos EUA, criador de Lost; Steve Jobs e Bill Gates, os nomes mais conhecidos da computação; e ganhadores do Prêmio Nobel como Daniel Kahneman, Murray Gell-Mann, Kary Mullis, James Watson. Os vídeos são curtos, entre quatro e 18 minutos, em média.</p>
<p><strong>Como fazer:</strong> acessar o site principal do TED que tem diferentes formas buscar o conteúdo das conferências. Há opções de legendas e muitos vídeos estão traduzidos para o português.</p>
<p>Link:<a href="http://www.ted.com/"> ted</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/itunes.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/itunes.jpg" alt="" width="152" height="229" /></a></p>
<p><strong>iTunes U<br />
</strong><br />
<strong>O que oferece:</strong> o projeto da Apple oferece, através do site do aplicativo do iTunes, acesso ao conteúdo de 800 das principais universidades e colégios do mundo. Faz parte do pacotão 350 mil palestras gratuitas, livros, planos de aula e outros conteúdos que podem ser acessados diretamente pelo iTunes. Há conteúdos do MIT e das universidades de Berkeley, Cambridge, Columbia, Oxford, Princeton, Trent, Portland e Yale. Da Alemanha, destaque para as instituições de ensino superior de Hamburgo, Berlim e Munique. Há conteúdos também das universidades de Pisa, Montreal e Estrasburgo, assim como filmes históricos da Livraria do Congresso dos EUA.</p>
<p><strong>Como fazer:</strong> é preciso ter o programa iTunes instalado (é possível baixá-lo gratuitamente no site da Apple). Com o programa aberto, basta entrar na iTunes Store e no canal específico iTunes U. A lista completa das universidades está na opção “universities &amp; colleges”.<br />
Link: <a href="http://edcommunity.apple.com/ali/">iTunes</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/khan.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/khan.jpg" alt="" width="120" height="120" /></a></p>
<p><strong>Khan Academy</strong></p>
<p><strong>O que oferece:</strong> o site do professor Salman Khan, ex-aluno do MIT e de Harvard, oferece explicações simples sobre assuntos complexos. No total, Khan produziu 2,1 mil gravações com duração média de 10 minutos que tratam de tópicos de matemática, biologia, química, física, cosmologia e astronomia, história, economia e finanças, entre outras áreas exatas ou humanas. O objetivo de Khan em “revolucionar a educação” atraiu a admiração de Bill Gates e um incentivo de US$ 10 milhões do Google para que os seus conteúdos sejam traduzidos para outras línguas. Atualmente, os vídeos no site de Khan estão todos em inglês.<br />
<strong>Como fazer:</strong> basta entrar na seção “watch” (assista) e buscar o assunto que interessa. Para entrar na área com exercícios (practice ou coach) é preciso ter uma conta do Google ou do Facebook. O site justifica este controle como uma forma do estudante e dos professores acompanharem o progresso no aprendizado.<br />
Link: <a href="http://www.khanacademy.org/">khan</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/youtube.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/youtube.jpg" alt="" width="235" height="56" /></a></p>
<p><strong>YouTube Edu</strong></p>
<p><strong>O que oferece:</strong> canal do YouTube específico sobre o tema educação, organiza os conteúdos por universidade ou por áreas de conhecimento, como engenharia, história, direito, matemática, entre outras. A qualidade dos vídeos é bastante variável. Há desde cursos inteiros até conteúdos curtos, como reuniões e entrevistas sobre temas diversificados de cada área.<br />
<strong>Como fazer:</strong> procurar os conteúdos pelo nome das instituições de ensino ou pela área de conhecimento.<br />
Link: <a href="http://www.youtube.com/education?b=400">YouTube</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/academic1.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/academic1.jpg" alt="" width="203" height="238" /></a></p>
<p><strong>Academic Earth</strong></p>
<p><strong>O que oferece:</strong> criada em São Francisco, nos Estados Unidos, a Academic Earth tem como objetivo organizar e apresentar os melhores conteúdos educativos gratuitos na internet. Pelo site é possível acessar cursos e palestras através de uma lista de universidades, de temas ou dos professores mais votados pelos usuários.<br />
<strong>Como fazer:</strong> é só navegar pelo <a href="http://www.academicearth.org/">site</a> e acessar os conteúdos.</p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/open.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/open.jpg" alt="" width="222" height="90" /></a></p>
<p><strong>OpenCourseWare Consortium</strong></p>
<p><strong>O que oferece:</strong> o site organiza o conteúdo de diversas universidades e cursos gratuitos. É possível acessá-los por idioma, por países, pela lista completa de instituições de ensino inscritas ou pelas áreas de conhecimento.<br />
<strong>Como fazer:</strong> existem diferentes mecanismos de busca de conteúdos.<br />
Link: <a href="http://www.ocwconsortium.org/">www.ocwconsortium.org</a></p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/bloomberg.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/bloomberg.jpg" alt="" width="255" height="108" /></a></p>
<p><strong>Johns Hopkins Bloomberg School of Public Health</strong></p>
<p><strong>O que oferece:</strong> disponibiliza cursos e conteúdos gratuitos de diferentes áreas da saúde na internet. O único inconveniente é que para ter acesso ao conteúdo de alguns cursos é preciso fazer um cadastro antes, informando dados pessoais e profissionais. A autorização de acesso é enviada por e-mail. Os conteúdos são oferecidos por especialistas como Cindy Parker, que trata sobre saúde mental, utilizando recursos de áudio e slides. Há cursos de 20 áreas diferentes, incluindo genética, nutrição, HIV/AIDS, doenças infecciosas, entre outras.</p>
<p><strong>Como fazer:</strong> no <a href="http://ocw.jhsph.edu/">site</a> de cursos gratuitos existem temas listados. Alguns podem ser acessados sem a necessidade de cadastro, mas outros vão exigir dados pessoais e profissionais básicos sem custos. Alguns conteúdos precisam de Adobe Reader instalado. Na opção “OCW Image Library” é possível acessar a conteúdos que podem servir de apoio para aulas ou apresentações.</p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/notredame.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/notredame-300x260.jpg" alt="" width="300" height="260" /></a></p>
<p><strong>University of Notre Dame</strong></p>
<p><strong>O que oferece:</strong> criada por um padre francês em meados do século 19, a Universidade de Notre Dame, localizada em Indiana, nos EUA, oferece conteúdos gratuitos de 31 departamentos diferentes. O diferencial é que as leituras dos cursos estão disponíveis integralmente no site, com imagens, textos, bibliografias e definição de termos organizados de forma simples. Há conteúdos de áreas tão distintas quanto estudos africanos, americanos e asiáticos, arquitetura, ciências políticas, sociologia, física, psicologia, entre outros.</p>
<p><strong>Como fazer:</strong> no <a href="http://ocw.nd.edu/">site</a> principal, basta escolher um dos departamentos listados e explorar os cursos disponíveis. Também é possível consultar informações sobre o professor, os materiais de estudo, a bibliografia e outros conteúdos relacionados.</p>
<p><a rel="lightbox[78]" href="http://wp.clicrbs.com.br/bit/files/2011/06/fgv.jpg"><img class="aligncenter" src="http://wp.clicrbs.com.br/bit/files/2011/06/fgv-300x292.jpg" alt="" width="300" height="292" /></a></p>
<p><strong>Fundação Getúlio Vargas (FGV)</strong></p>
<p><strong>O que oferece:</strong> cursos pagos de atualização, graduação, pós-graduação e soluções corporativas online. Mas oferece, também, uma seção de cursos gratuitos. A maioria tem duração de cinco horas. Mas há opções de cursos de 15 horas e 30 horas. Há conteúdos nas áreas de sustentabilidade, metodologia, gestão, direito tributário e cursos para professores de ensino médio (os mais longos). A fundação permite o acesso aos conteúdos com ou sem cadastro. A diferença é que os alunos que se cadastrarem podem, no final do curso, fazerem um teste e, se atingirem a nota mínima 7, poderão imprimir uma declaração de término do curso.</p>
<p><strong>Como fazer:</strong> entrar na seção específica do <a href="http://www5.fgv.br/fgvonline/cursosgratuitos.aspx">site</a> de cursos online da FGV e seguir os passos indicados. O cadastro é opcional, mas, com aprovação, garante certificado de conclusão.</p>
</div>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F07%2F20%2Fcursos-online-gratuitos%2F&amp;title=Cursos%20online%20gratuitos" id="wpa2a_22"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/jHU_6ywdJWo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/07/20/cursos-online-gratuitos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/07/20/cursos-online-gratuitos/</feedburner:origLink></item>
		<item>
		<title>MagicText</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/LM5CvV1_ywA/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/03/29/magictext/#comments</comments>
		<pubDate>Tue, 29 Mar 2011 13:46:53 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Utilidades]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[MagicText]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=327</guid>
		<description><![CDATA[Após perder algumas ferramentas que desenvolvi por não ter publicado, resolvi começar a divulga-las muitas são para soluções de problemas que tenho durante algum procedimento. O MagicText inicialmente era para inverter link, aqueles conhecidos links protegidos quando se quer baixar &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2011/03/29/magictext/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/IM6TMSKQdy-OYDHSLK19Wfh3Mrc/0/da"><img src="http://feedads.g.doubleclick.net/~a/IM6TMSKQdy-OYDHSLK19Wfh3Mrc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/IM6TMSKQdy-OYDHSLK19Wfh3Mrc/1/da"><img src="http://feedads.g.doubleclick.net/~a/IM6TMSKQdy-OYDHSLK19Wfh3Mrc/1/di" border="0" ismap="true"></img></a></p><p>Após perder algumas ferramentas que desenvolvi por não ter publicado, resolvi começar a divulga-las muitas são para soluções de problemas que tenho durante algum procedimento.</p>
<p>O MagicText inicialmente era para inverter link, aqueles conhecidos links protegidos quando se quer baixar algo pela net..<br />
<a title="MagicText" href="http://magictext.jeffersonluis.com"><img class="alignnone size-full wp-image-328" title="Captura_de_tela-1" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/03/Captura_de_tela-1.png" alt="" width="869" height="560" /></a></p>
<h2 style="text-align: center;"><a href="http://magictext.jeffersonluis.com">magictext.jeffersonluis.com</a></h2>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F03%2F29%2Fmagictext%2F&amp;title=MagicText" id="wpa2a_24"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/LM5CvV1_ywA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/03/29/magictext/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/03/29/magictext/</feedburner:origLink></item>
		<item>
		<title>Facebook – Cancelando pedido de amizade</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/smiPC6AINWM/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/03/18/facebook-cancelando-pedido-de-amizade/#comments</comments>
		<pubDate>Fri, 18 Mar 2011 17:45:50 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[amigo]]></category>
		<category><![CDATA[amizade]]></category>
		<category><![CDATA[cancelando]]></category>
		<category><![CDATA[pedido]]></category>
		<category><![CDATA[solicitação]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=319</guid>
		<description><![CDATA[Duvida encaminhada por email Se você anda recebendo atualização de pessoas que não aceitaram sua solicitação de amizade, você pode cancelar o pedido de amizade entrando no perfil da pessoa e cancelar no link inferior a esquerda do perfil.]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/48Bl9NxXoa-oDI0ppe0JjLO_0o8/0/da"><img src="http://feedads.g.doubleclick.net/~a/48Bl9NxXoa-oDI0ppe0JjLO_0o8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/48Bl9NxXoa-oDI0ppe0JjLO_0o8/1/da"><img src="http://feedads.g.doubleclick.net/~a/48Bl9NxXoa-oDI0ppe0JjLO_0o8/1/di" border="0" ismap="true"></img></a></p><p><em><strong>Duvida encaminhada por email</strong></em><br/><br />
Se você anda recebendo atualização de pessoas que não aceitaram sua solicitação de amizade, você pode cancelar o pedido de amizade entrando no perfil da pessoa e cancelar no link inferior a esquerda do perfil.<br />
<br/><br />
<a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/03/fb_.jpg"><img class="alignnone size-full wp-image-320" title="fb_" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2011/03/fb_.jpg" alt="" width="1036" height="900" /></a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F03%2F18%2Ffacebook-cancelando-pedido-de-amizade%2F&amp;title=Facebook%20%E2%80%93%20Cancelando%20pedido%20de%20amizade" id="wpa2a_26"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/smiPC6AINWM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/03/18/facebook-cancelando-pedido-de-amizade/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/03/18/facebook-cancelando-pedido-de-amizade/</feedburner:origLink></item>
		<item>
		<title>jQuery – Selecionando filhos do elemento this</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/WW7j0is9BSQ/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/03/04/jquery-selecionando-filhos-do-elemento-this/#comments</comments>
		<pubDate>Fri, 04 Mar 2011 13:16:23 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=316</guid>
		<description><![CDATA[ou]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/GXTr5dSM6PZ-9wsGPeS5f7aU7Ks/0/da"><img src="http://feedads.g.doubleclick.net/~a/GXTr5dSM6PZ-9wsGPeS5f7aU7Ks/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/GXTr5dSM6PZ-9wsGPeS5f7aU7Ks/1/da"><img src="http://feedads.g.doubleclick.net/~a/GXTr5dSM6PZ-9wsGPeS5f7aU7Ks/1/di" border="0" ismap="true"></img></a></p><pre class="brush: jscript; title: ; notranslate">
jQuery(&quot;img&quot;, this);
</pre>
<p>ou</p>
<pre class="brush: jscript; title: ; notranslate">
$(&quot;.red&quot;, this).css('color','red');
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F03%2F04%2Fjquery-selecionando-filhos-do-elemento-this%2F&amp;title=jQuery%20%E2%80%93%20Selecionando%20filhos%20do%20elemento%20this" id="wpa2a_28"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/WW7j0is9BSQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/03/04/jquery-selecionando-filhos-do-elemento-this/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/03/04/jquery-selecionando-filhos-do-elemento-this/</feedburner:origLink></item>
		<item>
		<title>Reference – CSS border-radius</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/Iosqwu0cdxs/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/02/04/reference-css-border-radius/#comments</comments>
		<pubDate>Fri, 04 Feb 2011 15:54:21 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=314</guid>
		<description><![CDATA[W3C Mozilla Safari e Chrome]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/3gfcPUaXF4gJkYdDfjCyBuEG5D4/0/da"><img src="http://feedads.g.doubleclick.net/~a/3gfcPUaXF4gJkYdDfjCyBuEG5D4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/3gfcPUaXF4gJkYdDfjCyBuEG5D4/1/da"><img src="http://feedads.g.doubleclick.net/~a/3gfcPUaXF4gJkYdDfjCyBuEG5D4/1/di" border="0" ismap="true"></img></a></p><p>W3C</p>
<pre class="brush: css; title: ; notranslate">
/*exemplo 1*/
border-radius: 25px;
/*exemplo 2*/
border-top-left-radius: 10px 5px;
border-top-right-radius: 10px;
/*exemplo 3*/
border-radius: 25px 10px 25px 10px;
</pre>
<p>Mozilla</p>
<pre class="brush: css; title: ; notranslate">
/*exemplo 1*/
-moz-border-radius: 25px;
/*exemplo 2*/
-moz-border-radius-topright: 25px;
-moz-border-radius-topleft: 25px;
/*exemplo 3*/
-moz-border-radius: 30px 15px 30px 15px;
</pre>
<p>Safari e Chrome</p>
<pre class="brush: css; title: ; notranslate">
/*exemplo 1*/
-webkit-border-radius: 25px;
/*exemplo 2*/
-webkit-border-top-right-radius: 25px;
-webkit-border-top-left-radius: 25px;
/*exemplo 3*/
-webkit-border-radius: 30px 0px 30px 0px;
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F02%2F04%2Freference-css-border-radius%2F&amp;title=Reference%20%E2%80%93%20CSS%20border-radius" id="wpa2a_30"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/Iosqwu0cdxs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/02/04/reference-css-border-radius/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/02/04/reference-css-border-radius/</feedburner:origLink></item>
		<item>
		<title>Dica – Editar Imagens com PHP</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/2vjrO-sfPrQ/</link>
		<comments>http://www.jeffersonluis.com/blog/2011/01/31/dica-editar-imagens-com-php/#comments</comments>
		<pubDate>Mon, 31 Jan 2011 12:17:25 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Fast Tip]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[imagem]]></category>
		<category><![CDATA[pic]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=311</guid>
		<description><![CDATA[PIC &#8211; Uma classe para edição de imagens usando comandos CSS, simples, rápido e eficiente.]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Bo9jm2NCzNYaEjhHKYEbsS4mppw/0/da"><img src="http://feedads.g.doubleclick.net/~a/Bo9jm2NCzNYaEjhHKYEbsS4mppw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Bo9jm2NCzNYaEjhHKYEbsS4mppw/1/da"><img src="http://feedads.g.doubleclick.net/~a/Bo9jm2NCzNYaEjhHKYEbsS4mppw/1/di" border="0" ismap="true"></img></a></p><p><a href="https://github.com/acustodioo/pic/wiki">PIC</a> &#8211; Uma classe para edição de imagens usando comandos CSS, simples, rápido e eficiente.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2011%2F01%2F31%2Fdica-editar-imagens-com-php%2F&amp;title=Dica%20%E2%80%93%20Editar%20Imagens%20com%20PHP" id="wpa2a_32"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/2vjrO-sfPrQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2011/01/31/dica-editar-imagens-com-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2011/01/31/dica-editar-imagens-com-php/</feedburner:origLink></item>
		<item>
		<title>PHP – Operador ternário</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/TVRUisnhvIk/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/11/26/php-operador-ternario/#comments</comments>
		<pubDate>Fri, 26 Nov 2010 18:48:25 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Fast Tip]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[if simplificado]]></category>
		<category><![CDATA[operador]]></category>
		<category><![CDATA[ternário]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=303</guid>
		<description><![CDATA[Isso aqui não passa de um &#8220;Fast tip&#8221;. Operador ternário é basicamente um if simplificado, segue alguns exemplos: Exemplo 1 Exemplo 2]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/BpJ0iMXhXkC1NuwK-bwGACfzRyo/0/da"><img src="http://feedads.g.doubleclick.net/~a/BpJ0iMXhXkC1NuwK-bwGACfzRyo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/BpJ0iMXhXkC1NuwK-bwGACfzRyo/1/da"><img src="http://feedads.g.doubleclick.net/~a/BpJ0iMXhXkC1NuwK-bwGACfzRyo/1/di" border="0" ismap="true"></img></a></p><p>Isso aqui não passa de um &#8220;Fast tip&#8221;.<br />
Operador ternário é basicamente um if simplificado, segue alguns exemplos:</p>
<p><strong>Exemplo 1</strong></p>
<pre class="brush: php; title: ; notranslate">
$cidade = 'Blumenau';
$resultado = $cidade == 'Blumenau' ? 'sim' : 'não';
echo $resultado; // Saida -&gt; sim
</pre>
<p><strong>Exemplo 2</strong></p>
<pre class="brush: php; title: ; notranslate">
$idade = 13;
echo $adulto = $idade &gt; 17 ? 'sim' : 'não' ; //Saida -&gt; não
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F11%2F26%2Fphp-operador-ternario%2F&amp;title=PHP%20%E2%80%93%20Operador%20tern%C3%A1rio" id="wpa2a_34"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/TVRUisnhvIk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/11/26/php-operador-ternario/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/11/26/php-operador-ternario/</feedburner:origLink></item>
		<item>
		<title>Instalando Internet Explorer(IE) no Linux</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/eVvm5E7LcL4/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/09/10/instalando-internet-explorerie-no-linux/#comments</comments>
		<pubDate>Fri, 10 Sep 2010 18:03:37 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[ie6]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=297</guid>
		<description><![CDATA[Antes que me perguntem, sim existe utilidade em instalar o internet explorer no linux. A minha situação foi a seguinte, me informaram que estava havendo problemas com a listagem de um rss ao dar um analisada no site reparei que &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/09/10/instalando-internet-explorerie-no-linux/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/tRgzaD3QP3cjRdjbZDW2Uvao3hI/0/da"><img src="http://feedads.g.doubleclick.net/~a/tRgzaD3QP3cjRdjbZDW2Uvao3hI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/tRgzaD3QP3cjRdjbZDW2Uvao3hI/1/da"><img src="http://feedads.g.doubleclick.net/~a/tRgzaD3QP3cjRdjbZDW2Uvao3hI/1/di" border="0" ismap="true"></img></a></p><p>Antes que me perguntem, sim existe utilidade em instalar o internet explorer no linux.</p>
<p>A minha situação foi a seguinte, me informaram que estava havendo problemas com a listagem de um rss ao dar um analisada no site reparei que era usando uma biblioteca javascript, que puxava informações do xml  e navegava pelos nodes<br />
e os exibia conforme a listagem dos posts, mas como nem tudo são flores no IE que deu pau pra variar, Nesta situação me senti obrigado a instalar o IE na minha maquina(ubuntu 10.04), bla bla bla.. conclusão é realmente necessário a instalação do IE caso vc trabalhe com desenvolvimento de site ou sistemas web, pois muitos bugs en<br />
volvem layout ou a interpretação javascript.</p>
<p>Para instalar vamos usar o <strong>IEs4Linux</strong><br />
<a href="http://www.tatanka.com.br/ies4linux/page/Main_Page">http://www.tatanka.com.br/ies4linux/page/Main_Page</a></p>
<p>O IEs4Linux depende do velho amigo Wine (o interpretador de binários Windows) e do Cabextract (para extrair arquivos CAB), este último provavelmente já incluído na sua distribuição.</p>
<pre class="brush: bash; title: ; notranslate">$ sudo apt-get install wine cabextract</pre>
<p>Terminada a instalação do Wine e Cabextract, vamos baixar a última versão do IEs4Linux, extrair o pacote e rodar o executável existente dentro dele, sempre como usuário:</p>
<pre class="brush: bash; title: ; notranslate">$ wget http://www.tatanka.com.br/ies4linux/downloads/ies4linux-latest.tar.gz
$ tar zxvf ies4linux-latest.tar.gz
$ cd ies4linux-*
$ ./ies4linux</pre>
<p>Dando &#8220;OK&#8221; o IEs4Linux fará tudo automaticamente (download, instalação e configuração), registrando passo por passo o que ele está fazendo:</p>
<p style="text-align: center;"><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/09/img-6d5378c3.png"><img class="size-full wp-image-298 aligncenter" title="img-6d5378c3" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/09/img-6d5378c3.png" alt="" width="502" height="525" /></a></p>
<p style="text-align: center;">&nbsp;</p>
<p>Pronto agora para executá-lo basta você dar o comando</p>
<pre class="brush: bash; title: ; notranslate">
/home/nomeDoUser/bin/ie6
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F09%2F10%2Finstalando-internet-explorerie-no-linux%2F&amp;title=Instalando%20Internet%20Explorer%28IE%29%20no%20Linux" id="wpa2a_36"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/eVvm5E7LcL4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/09/10/instalando-internet-explorerie-no-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/09/10/instalando-internet-explorerie-no-linux/</feedburner:origLink></item>
		<item>
		<title>Iniciando com Zend_Search_Lucene</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/rLkmMSIEb3M/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/09/09/iniciando-com-zend_search_lucene/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 18:55:13 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[full-text]]></category>
		<category><![CDATA[index]]></category>
		<category><![CDATA[lucene]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[sphinx]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=292</guid>
		<description><![CDATA[A medida que os websites cresce, pesquisas como &#8220;LIKE title ‘%search term%’&#8221; torna-se inconfiável. Existem soluções muito boas como Sphinx, Lucene, etc, você nem sempre pode ter Sphinx instalado (em servidores compartilhados não é possivel) sendo assim outra solução deve &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/09/09/iniciando-com-zend_search_lucene/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/9YJ5ZVcZ7V3A4w_Op0tYLATH4lg/0/da"><img src="http://feedads.g.doubleclick.net/~a/9YJ5ZVcZ7V3A4w_Op0tYLATH4lg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/9YJ5ZVcZ7V3A4w_Op0tYLATH4lg/1/da"><img src="http://feedads.g.doubleclick.net/~a/9YJ5ZVcZ7V3A4w_Op0tYLATH4lg/1/di" border="0" ismap="true"></img></a></p><p>A medida que os websites cresce, pesquisas como &#8220;LIKE title ‘%search term%’&#8221; torna-se inconfiável. Existem soluções muito boas como <a href="http://sphinxsearch.com/">Sphinx</a>, <a href="http://lucene.apache.org/java/docs/">Lucene</a>, etc, você nem sempre pode ter Sphinx instalado (em servidores compartilhados não é possivel) sendo assim outra solução deve ser escolhida.</p>
<p>O MySQL suporta <a href="http://www.devarticles.com/c/a/MySQL/Getting-Started-With-MySQLs-Full-Text-Search-Capabilities/">full-text indexing</a>, mas ele não dá um grande controle sobre o índice real. Felizmente, a equipe do Zend trabalho maravilhosamente e implementou 100% da pesquisa Lucene no PHP. <a href="http://framework.zend.com/manual/en/zend.search.lucene.html">Zend_Search_Lucene</a> faz parte do Zend Framework, mas como todos os módulos é executado de forma quase independente (ele usa Zend_Exception, etc.)</p>
<p>Como você começar a indexação de dados? O <a href="http://framework.zend.com/manual/en/zend.search.lucene.index-creation.html">manual</a> do Zend tem bons exemplos de como iniciar com Lucene, mas para criar um index de amostra você pode usar esse código (você precisa ter auto-loading habilitado e conexão db disponíveis):</p>
<pre class="brush: php; title: ; notranslate">
// Criando um indece
$index = Zend_Search_Lucene::create('indexes/products');

$sql = &quot;select product_name, product_url from products&quot;;

$results = $db-&gt;fetchAll($sql);

foreach ($results as $result)
{
    $doc = new Zend_Search_Lucene_Document();

    // Armazena a URL do documento para identificá-lo em resultados de pesquisa
    $doc-&gt;addField(
    Zend_Search_Lucene_Field::UnIndexed('url', $result-&gt;product_url));

    // Titulo do documento de indice
    $doc-&gt;addField(
    Zend_Search_Lucene_Field::Text('title', $result-&gt;product_name));

    // Adiciona o documento ao índice
    $index-&gt;addDocument($doc);
}

// Optimize index.
$index-&gt;optimize();
</pre>
<p>Este simples código irá selecionar as informação dos produtos do banco de dados, percorrerá os resultados e adicionara os documentos no index. Neste exemplo eu deixei a url como UnIndexed, porque eu fazei a pesquisa somente pelo título, mas Lucene permite <a href="http://framework.zend.com/manual/en/zend.search.lucene.html#zend.search.lucene.index-creation.understanding-field-types">outros tipos de campo</a>. Na maioria dos casos, o texto de descrição do produto deve ser adicionado (ou talvez até indexados).</p>
<p>Buscando através do índice é ainda mais fácil. Uma coisa que você precisa saber é como construir pesquisas em <a href="http://framework.zend.com/manual/en/zend.search.lucene.query-language.html">linguagem de consulta</a>. Exemplo:</p>
<pre class="brush: php; title: ; notranslate">
// Abre o index
$index = Zend_Search_Lucene::open('indexes/products');

$query = 'title:&quot;Apple MacBook&quot;';

// Procura pela query
$hits = $index-&gt;find($query);

foreach ($hits as $hit) {
    echo $hit-&gt;score . &quot; &quot;;
    echo $hit-&gt;title . &quot; &quot;;
    echo $hit-&gt;url . PHP_EOL;
}
</pre>
<p>Eu tentei criar um índice de 6.000 produtos (0,7 MB), ele foi criado em cerca de 3 minutos e todas as pesquisas tem cerca de 0,1 s. Eu testei no meu laptop, sem APC e com o Apache padrão. Em servidores esta tarefa seria executar muito mais rápida, mas 0,1 para a pesquisa não é tão ruim assim.</p>
<p>Zend_Search_Lucene não vai mudar o Sphinx ou o Lucene, mas em ambientes limitados (como servidores compartilhados) ele pode ser bastante útil. Ele suporta muitos tipos de consulta: consultas por frase, consultas booleanas, consultas curinga, consultas de proximidade, de alcance e muitas outras, o que dificilmente pode ser alcançado com o uso de index full-text no MySQL.</p>
<p>Traduzido de <a href="http://dev.juokaz.com/">Juozas devBlog</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F09%2F09%2Finiciando-com-zend_search_lucene%2F&amp;title=Iniciando%20com%20Zend_Search_Lucene" id="wpa2a_38"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/rLkmMSIEb3M" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/09/09/iniciando-com-zend_search_lucene/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/09/09/iniciando-com-zend_search_lucene/</feedburner:origLink></item>
		<item>
		<title>Deletando pedidos (‘order’) de teste – Magento</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/N60r9gE7ctI/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/08/26/deletando-pedidos-order-de-teste-magento/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 20:47:09 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[deletar]]></category>
		<category><![CDATA[delete]]></category>
		<category><![CDATA[order id]]></category>
		<category><![CDATA[pedidos]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=281</guid>
		<description><![CDATA[Aloha, hoje vou explicar como deletar pedidos de teste no magento. Existem algumas formas para fazermos isto a primeira forma é comprado o modulo Delete Any Order (€20.00) desenvolvido pela Yireo que tem suporte as versões 1.3 e 1.4, já &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/08/26/deletando-pedidos-order-de-teste-magento/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/NAw-RRY3ORYhaVubip_TSJ-9hrc/0/da"><img src="http://feedads.g.doubleclick.net/~a/NAw-RRY3ORYhaVubip_TSJ-9hrc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/NAw-RRY3ORYhaVubip_TSJ-9hrc/1/da"><img src="http://feedads.g.doubleclick.net/~a/NAw-RRY3ORYhaVubip_TSJ-9hrc/1/di" border="0" ismap="true"></img></a></p><p>Aloha, hoje vou explicar como deletar pedidos de teste no magento.</p>
<p>Existem algumas formas para fazermos isto a primeira forma é comprado o modulo <a href="http://www.magentocommerce.com/magento-connect/Yireo/extension/1857/yireo-delete-any-order" target="_blank"><strong>Delete Any Order</strong></a> (€20.00) desenvolvido pela <strong>Yireo</strong> que tem suporte as versões 1.3 e 1.4, já se você não quer desembolsar nada para esta operação siga os passos a diante conforme sua versão do magento:</p>
<p>Tanto para a versão 1.3 quanto para a 1.4 faremos uma stored procedure no nosso bando de dados.</p>
<p><strong>Magento 1.3</strong></p>
<p>1 <strong>Criando a procedure</strong><br />
Copie e cole este SQL no seu banco de dados:</p>
<pre class="brush: sql; title: ; notranslate">
DELIMITER $$
CREATE PROCEDURE DELETAR_PEDIDOS(id_inicial INTEGER, id_final INTEGER)
	BEGIN
		DECLARE a INT DEFAULT id_inicial ;
		simple_loop: LOOP
			SET a=a+1;
			SET @increment_id = a;
			SET FOREIGN_KEY_CHECKS = 1;

			SELECT @order_id:=entity_id FROM sales_order_entity
			WHERE increment_id=@increment_id;

			DELETE FROM sales_order_entity
			WHERE entity_id=@order_id or parent_id=@order_id;

			DELETE FROM sales_order
			WHERE increment_id=@increment_id;

			SELECT a;
			IF a=id_final THEN
				LEAVE simple_loop;
			END IF;
		END LOOP simple_loop;
	END$$
</pre>
<p>2 <strong>Executando a procedure</strong><br />
Primeiro parâmetro é o order id inicial e o segundo é o order id final, sendo assim será deletado todos os pedidos entre este intervalo.</p>
<pre class="brush: sql; title: ; notranslate">
CALL DELETAR_PEDIDOS(100000064, 100000121);
</pre>
<p><strong>Magento 1.4</strong></p>
<p>1 <strong>Criando a procedure</strong><br />
Copie e cole este SQL no seu banco de dados:</p>
<pre class="brush: sql; title: ; notranslate">
DELIMITER $$
CREATE PROCEDURE DELETAR_PEDIDOS(id_inicial INTEGER, id_final INTEGER)

   BEGIN
      DECLARE a INT DEFAULT id_inicial ;
      simple_loop: LOOP
         SET a=a+1;

        SET @orderId = a;

        SET FOREIGN_KEY_CHECKS = 1;

        DELETE FROM sales_flat_order
            WHERE increment_id = @orderId;

        DELETE FROM sales_flat_quote
            WHERE reserved_order_id = @orderId;

         SELECT a;
         IF a=id_final THEN
            LEAVE simple_loop;
         END IF;
   END LOOP simple_loop;
END $$
</pre>
<p>2 <strong>Executando a procedure</strong><br />
Primeiro parâmetro é o order id inicial e o segundo é o order id final, sendo assim será deletado todos os pedidos entre este intervalo.</p>
<pre class="brush: sql; title: ; notranslate">
CALL DELETAR_PEDIDOS(100000064, 100000121);
</pre>
<p>p.s : <span style="color: #800000;"><strong>Antes de fazer qualquer mudança no seu banco de dados de extremamente recomendado fazer um backup do mesmo.</strong></span></p>
<p><strong>Excluindo somente um pedido</strong></p>
<pre class="brush: sql; title: ; notranslate">
DELIMITER $$
CREATE PROCEDURE DELETAR_PEDIDO(id INTEGER)
        BEGIN
                SET FOREIGN_KEY_CHECKS = 1;
                SET @id = id;

                SELECT @order_id:=entity_id FROM sales_order_entity
                WHERE increment_id=@id;

                DELETE FROM sales_order_entity
                WHERE entity_id=@order_id or parent_id=@order_id;

                DELETE FROM sales_order
                WHERE increment_id=@id;

        END$$
</pre>
<p><strong>Modo de usar:</strong></p>
<pre class="brush: sql; title: ; notranslate">
CALL  DELETAR_PEDIDO(10000054);
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F08%2F26%2Fdeletando-pedidos-order-de-teste-magento%2F&amp;title=Deletando%20pedidos%20%28%E2%80%98order%E2%80%99%29%20de%20teste%20%E2%80%93%20Magento" id="wpa2a_40"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/N60r9gE7ctI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/08/26/deletando-pedidos-order-de-teste-magento/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/08/26/deletando-pedidos-order-de-teste-magento/</feedburner:origLink></item>
		<item>
		<title>Problemas com chace no admin – Magento 1.4.x</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/jn_GYxN44v4/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/08/23/problemas-com-chace-no-admin-magento-1-4-x/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 19:11:21 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[1.4.1]]></category>
		<category><![CDATA[1.4.x]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[problemas]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=276</guid>
		<description><![CDATA[Hoje tive este probleminha que me exigiu bastante tempo para encontrar a solução, mas como sou uma pessoa muito generosa vou lhes mostrar como resolver em três simples passos. 1.Primeiro precisamos editar o arquivo File.php que fica na pasta app/code/core/Zend/Cache/Backend/ &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/08/23/problemas-com-chace-no-admin-magento-1-4-x/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/IKYpIsgoIt6gqMmVnHhhvvz4SP4/0/da"><img src="http://feedads.g.doubleclick.net/~a/IKYpIsgoIt6gqMmVnHhhvvz4SP4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/IKYpIsgoIt6gqMmVnHhhvvz4SP4/1/da"><img src="http://feedads.g.doubleclick.net/~a/IKYpIsgoIt6gqMmVnHhhvvz4SP4/1/di" border="0" ismap="true"></img></a></p><p>Hoje tive este probleminha que me exigiu bastante tempo para encontrar a solução, mas como sou uma pessoa muito generosa vou lhes mostrar como resolver em três simples passos.<br />
1.Primeiro precisamos editar o arquivo File.php que fica na pasta <span style="color: #888888;">app/code/core/Zend/Cache/Backend/</span></p>
<p>Altere isto:<br />
protected $_options = array(<br />
&#8216;cache_dir&#8217; =&gt; &#8216;null&#8217;,<br />
<br />
Para isto:<br />
protected $_options = array(<br />
&#8216;cache_dir&#8217; =&gt; &#8216;/tmp&#8217;,<br />
<br />
no Magento versão 1.4.1.0 este arquivo fica na pasta:<span style="color: #888888;"> lib/Zend/Cache/Backend/</span><br />
<br />
2.Feito isto basta criar uma pasta com o nome tmp nesta pasta que você encontrou o arquivo.<br />
3.Dar permissão para escrita na pasta.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F08%2F23%2Fproblemas-com-chace-no-admin-magento-1-4-x%2F&amp;title=Problemas%20com%20chace%20no%20admin%20%E2%80%93%20Magento%201.4.x" id="wpa2a_42"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/jn_GYxN44v4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/08/23/problemas-com-chace-no-admin-magento-1-4-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/08/23/problemas-com-chace-no-admin-magento-1-4-x/</feedburner:origLink></item>
		<item>
		<title>Verificar se um elemento existe com jQuery</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/eHqPorFsAMg/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/08/20/verificar-se-um-elemento-existe-com-jquery/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 16:32:02 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=271</guid>
		<description><![CDATA[Muitos já devem ter passado por esta situação, onde queremos verificar se um elemento existe antes de aplicar uma determinada função a ele com jQuery. Vou demonstrar algumas soluções simples para resolvermos este problema. No jquery o seletor sempre irá &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/08/20/verificar-se-um-elemento-existe-com-jquery/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/n62JdvzSoDl_3r-adS-D2SkCx1U/0/da"><img src="http://feedads.g.doubleclick.net/~a/n62JdvzSoDl_3r-adS-D2SkCx1U/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/n62JdvzSoDl_3r-adS-D2SkCx1U/1/da"><img src="http://feedads.g.doubleclick.net/~a/n62JdvzSoDl_3r-adS-D2SkCx1U/1/di" border="0" ismap="true"></img></a></p><p>Muitos já devem ter passado por esta situação, onde queremos verificar se um elemento existe antes de aplicar uma determinada função a ele com jQuery.<br />
Vou demonstrar algumas soluções simples para resolvermos este problema.</p>
<p>No jquery o seletor sempre irá retornar um array de objetos tipados, com isso podemos usar a propriedade “length”.</p>
<pre class="brush: jscript; title: ; notranslate">
if( $('#id_do_elemento').length )
{
   // code.
}
</pre>
<p>Solução sem jQuery</p>
<pre class="brush: jscript; title: ; notranslate">
if(document.getElementById('id_do_elemento') != null)
{
   // code.
}
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F08%2F20%2Fverificar-se-um-elemento-existe-com-jquery%2F&amp;title=Verificar%20se%20um%20elemento%20existe%20com%20jQuery" id="wpa2a_44"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/eHqPorFsAMg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/08/20/verificar-se-um-elemento-existe-com-jquery/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/08/20/verificar-se-um-elemento-existe-com-jquery/</feedburner:origLink></item>
		<item>
		<title>Magentos – Resets</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/93F03Y52f_4/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/08/02/magentos-resets/#comments</comments>
		<pubDate>Mon, 02 Aug 2010 19:21:28 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[reset]]></category>
		<category><![CDATA[SQL]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=266</guid>
		<description><![CDATA[Resetar compras SET FOREIGN_KEY_CHECKS=0; TRUNCATE `sales_order`; TRUNCATE `sales_order_datetime`; TRUNCATE `sales_order_decimal`; TRUNCATE `sales_order_entity`; TRUNCATE `sales_order_entity_datetime`; TRUNCATE `sales_order_entity_decimal`; TRUNCATE `sales_order_entity_int`; TRUNCATE `sales_order_entity_text`; TRUNCATE `sales_order_entity_varchar`; TRUNCATE `sales_order_int`; TRUNCATE `sales_order_text`; TRUNCATE `sales_order_varchar`; TRUNCATE `sales_flat_quote`; TRUNCATE `sales_flat_quote_address`; TRUNCATE `sales_flat_quote_address_item`; TRUNCATE `sales_flat_quote_item`; TRUNCATE `sales_flat_quote_item_option`; TRUNCATE `sales_flat_order_item`; TRUNCATE `sendfriend_log`; TRUNCATE `tag`; TRUNCATE `tag_relation`; TRUNCATE `tag_summary`; TRUNCATE `wishlist`; TRUNCATE `log_quote`; TRUNCATE `report_event`; ALTER TABLE `sales_order` AUTO_INCREMENT=1; ALTER TABLE `sales_order_datetime` AUTO_INCREMENT=1; ALTER TABLE `sales_order_decimal` AUTO_INCREMENT=1; ALTER TABLE `sales_order_entity` AUTO_INCREMENT=1; ALTER TABLE `sales_order_entity_datetime` AUTO_INCREMENT=1; ALTER TABLE `sales_order_entity_decimal` AUTO_INCREMENT=1; ALTER TABLE `sales_order_entity_int` AUTO_INCREMENT=1; ALTER TABLE `sales_order_entity_text` AUTO_INCREMENT=1; ALTER TABLE `sales_order_entity_varchar` AUTO_INCREMENT=1; ALTER TABLE `sales_order_int` AUTO_INCREMENT=1; ALTER TABLE `sales_order_text` AUTO_INCREMENT=1; ALTER TABLE `sales_order_varchar` AUTO_INCREMENT=1; &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/08/02/magentos-resets/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/cBf3brBsKbjeutJBTzAtybU3EFk/0/da"><img src="http://feedads.g.doubleclick.net/~a/cBf3brBsKbjeutJBTzAtybU3EFk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/cBf3brBsKbjeutJBTzAtybU3EFk/1/da"><img src="http://feedads.g.doubleclick.net/~a/cBf3brBsKbjeutJBTzAtybU3EFk/1/di" border="0" ismap="true"></img></a></p><p><strong>Resetar compras</strong></p>
<blockquote><p>SET FOREIGN_KEY_CHECKS=0;<br />
TRUNCATE `sales_order`;<br />
TRUNCATE `sales_order_datetime`;<br />
TRUNCATE `sales_order_decimal`;<br />
TRUNCATE `sales_order_entity`;<br />
TRUNCATE `sales_order_entity_datetime`;<br />
TRUNCATE `sales_order_entity_decimal`;<br />
TRUNCATE `sales_order_entity_int`;<br />
TRUNCATE `sales_order_entity_text`;<br />
TRUNCATE `sales_order_entity_varchar`;<br />
TRUNCATE `sales_order_int`;<br />
TRUNCATE `sales_order_text`;<br />
TRUNCATE `sales_order_varchar`;<br />
TRUNCATE `sales_flat_quote`;<br />
TRUNCATE `sales_flat_quote_address`;<br />
TRUNCATE `sales_flat_quote_address_item`;<br />
TRUNCATE `sales_flat_quote_item`;<br />
TRUNCATE `sales_flat_quote_item_option`;<br />
TRUNCATE `sales_flat_order_item`;<br />
TRUNCATE `sendfriend_log`;<br />
TRUNCATE `tag`;<br />
TRUNCATE `tag_relation`;<br />
TRUNCATE `tag_summary`;<br />
TRUNCATE `wishlist`;<br />
TRUNCATE `log_quote`;<br />
TRUNCATE `report_event`;</p>
<p>ALTER TABLE `sales_order` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_datetime` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_decimal` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_entity` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_entity_datetime` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_entity_decimal` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_entity_int` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_entity_text` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_entity_varchar` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_int` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_text` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_order_varchar` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_flat_quote` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_flat_quote_address` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_flat_quote_address_item` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_flat_quote_item` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_flat_quote_item_option` AUTO_INCREMENT=1;<br />
ALTER TABLE `sales_flat_order_item` AUTO_INCREMENT=1;<br />
ALTER TABLE `sendfriend_log` AUTO_INCREMENT=1;<br />
ALTER TABLE `tag` AUTO_INCREMENT=1;<br />
ALTER TABLE `tag_relation` AUTO_INCREMENT=1;<br />
ALTER TABLE `tag_summary` AUTO_INCREMENT=1;<br />
ALTER TABLE `wishlist` AUTO_INCREMENT=1;<br />
ALTER TABLE `log_quote` AUTO_INCREMENT=1;<br />
ALTER TABLE `report_event` AUTO_INCREMENT=1;</p></blockquote>
<p><strong>Resetar usuários</strong></p>
<blockquote><p>TRUNCATE `customer_address_entity`;<br />
TRUNCATE `customer_address_entity_datetime`;<br />
TRUNCATE `customer_address_entity_decimal`;<br />
TRUNCATE `customer_address_entity_int`;<br />
TRUNCATE `customer_address_entity_text`;<br />
TRUNCATE `customer_address_entity_varchar`;<br />
TRUNCATE `customer_entity`;<br />
TRUNCATE `customer_entity_datetime`;<br />
TRUNCATE `customer_entity_decimal`;<br />
TRUNCATE `customer_entity_int`;<br />
TRUNCATE `customer_entity_text`;<br />
TRUNCATE `customer_entity_varchar`;<br />
TRUNCATE `log_customer`;<br />
TRUNCATE `log_visitor`;<br />
TRUNCATE `log_visitor_info`;</p>
<p>ALTER TABLE `customer_address_entity` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_address_entity_datetime` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_address_entity_decimal` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_address_entity_int` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_address_entity_text` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_address_entity_varchar` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_entity` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_entity_datetime` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_entity_decimal` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_entity_int` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_entity_text` AUTO_INCREMENT=1;<br />
ALTER TABLE `customer_entity_varchar` AUTO_INCREMENT=1;<br />
ALTER TABLE `log_customer` AUTO_INCREMENT=1;<br />
ALTER TABLE `log_visitor` AUTO_INCREMENT=1;<br />
ALTER TABLE `log_visitor_info` AUTO_INCREMENT=1;</p>
<p>&#8211; Reset all ID counters<br />
TRUNCATE `eav_entity_store`;<br />
ALTER TABLE  `eav_entity_store` AUTO_INCREMENT=1;</p>
<p>SET FOREIGN_KEY_CHECKS=1;
</p></blockquote>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F08%2F02%2Fmagentos-resets%2F&amp;title=Magentos%20%E2%80%93%20Resets" id="wpa2a_46"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/93F03Y52f_4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/08/02/magentos-resets/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/08/02/magentos-resets/</feedburner:origLink></item>
		<item>
		<title>10 extensões útil para Magento</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/-ebdqLloOkw/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/07/09/10-extensoes-util-para-magento/#comments</comments>
		<pubDate>Fri, 09 Jul 2010 17:22:23 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[extensões]]></category>
		<category><![CDATA[útil]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=259</guid>
		<description><![CDATA[# 1. Direct ResizeGive a possibilidade de redimensionar imagens sem distorcê-las. Você pode especificar uma largura e um valor Altura, bem como uma relação. Todos lidar com imagens em Magento irão apreciar este, com certeza. http://www.magentocommerce.com/extension/153/direct-resize # 2. Magento lightbox &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/07/09/10-extensoes-util-para-magento/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/MJN4QsxJyxaw2gfOlQT7Sw-d7b8/0/da"><img src="http://feedads.g.doubleclick.net/~a/MJN4QsxJyxaw2gfOlQT7Sw-d7b8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/MJN4QsxJyxaw2gfOlQT7Sw-d7b8/1/da"><img src="http://feedads.g.doubleclick.net/~a/MJN4QsxJyxaw2gfOlQT7Sw-d7b8/1/di" border="0" ismap="true"></img></a></p><p># 1. Direct ResizeGive a possibilidade de redimensionar imagens sem distorcê-las. Você pode especificar uma largura e um valor Altura, bem como uma relação. Todos lidar com imagens em Magento irão apreciar este, com certeza.<br />
<a href="http://www.magentocommerce.com/extension/153/direct-resize">http://www.magentocommerce.com/extension/153/direct-resize</a></p>
<p># 2. Magento lightbox Easy Esta pequena extensão ajudará a instalar o widget Lightbox. Instalação e configuração levará aproximadamente 5 minutos.<br />
<a href="http://www.magentocommerce.com/extension/1487/magento-easy-lightbox">http://www.magentocommerce.com/extension/1487/magento-easy-lightbox</a></p>
<p># 3. Menu explodiu Substitui a queda de coluna padrão único para baixo com uma lista suspensa com várias colunas com 2 e 3 itens de menu de nível.<br />
<a href="http://www.magentocommerce.com/magento-connect/Raptor+Commerce+ 29/extension/1345/raptor_explodedmenu% 28toby%">http://www.magentocommerce.com/magento-connect/Raptor+Commerce+ 29/extension/1345/raptor_explodedmenu% 28toby%</a></p>
<p># 4. Magento Easy Tabs Esta pequena extensão irá ajudar a adicionar guias informativos sobre a página do produto. Não há arquivos são substituídos e nenhuma experiência codding necessários para instalar.<br />
<a href="http://www.magentocommerce.com/magento-connect/TemplatesMaster/extension/1725/magento-easytabs">http://www.magentocommerce.com/magento-connect/TemplatesMaster/extension/1725/magento-easytabs</a></p>
<p># 5. Canonical URL Esta extensão adiciona novas ligações canônicas para a cabeça de suas páginas Magento. <span id="more-259"></span><a href="http://www.magentocommerce.com/magento-connect/Yoast/extension/906/canonical-url-s-for-magento">http://www.magentocommerce.com/magento-connect/Yoast/extension/906/canonical-url-s-for-magento</a></p>
<p># 6. Fooman Google Analytics além de recursos adicionais para o padrão GooglePágina módulo. Track cada página individual &#8211; incluindo seções via AJAX recuperados durante uma página checkout-</p>
<p>Digite DomainName para acompanhar através do back-end Magento / clique aqui se você deve usá-lo. Acompanhe o real digitado em palavras-chave no AdWords, em vez de apenas o termo que você lance (esta ainda não pôde funcionar devido a um bug no Magento em si). Opcionalmente, acompanhar conversões Adwords para compras.<br />
<a href="http://www.magentocommerce.com/magento-connect/FOOMAN/extension/171/fooman-google-analytics-plus">http://www.magentocommerce.com/magento-connect/FOOMAN/extension/171/fooman-google-analytics-plus</a></p>
<p># 7. Permite excluir as ordens que você exclua testes ordens a partir do menu drop-down no painel de Admin. <a href="http://www.magentocommerce.com/magento-connect/Boutik+Circus/extension/873/delete-orders">http://www.magentocommerce.com/magento-connect/Boutik+Circus/extension/873/delete-orders</a><br />
# 8. uGiftCert Permita que seus clientes a compra e utilização Gift Certificates.<br />
<a href="http://www.magentocommerce.com/magento-connect/Unirgy/extension/751/unirgy_giftcert">http://www.magentocommerce.com/magento-connect/Unirgy/extension/751/unirgy_giftcert</a></p>
<p># 9.Featured Esta extensão dá a sua capacidade de Magento para fácil gerenciamento de produtos apresentados. Frontend características incluem interface separada para listagem de todos os produtos em destaque e um bloco de uso para a colocação mais fácil para as interfaces de sua escolha.<br />
<a href="http://www.magentocommerce.com/magento-connect/Inchoo/extension/2513/featured-products">http://www.magentocommerce.com/magento-connect/Inchoo/extension/2513/featured-products</a></p>
<p># 10. Enhanced Admin Produtos Grid Adiciona algumas características emocionantes personalizável para a grade de produtos como: Full Product Search, Grid Row Highlighter, catálogo Grid Thumbnails / Imagens Massa Produto Atualizar etc<br />
<a href="http://www.magentocommerce.com/magento-connect/WDCA/ extension/748/enhanced-product-grid">http://www.magentocommerce.com/magento-connect/WDCA/ extension/748/enhanced-product-grid</a></p>
<p>Traduzido de: <a href="http://www.magentonews.co.uk/magento-development/10-useful-magento-extensions/">magentonews.co.uk</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F07%2F09%2F10-extensoes-util-para-magento%2F&amp;title=10%20extens%C3%B5es%20%C3%BAtil%20para%20Magento" id="wpa2a_48"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/-ebdqLloOkw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/07/09/10-extensoes-util-para-magento/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/07/09/10-extensoes-util-para-magento/</feedburner:origLink></item>
		<item>
		<title>emptyInput – Plugin jQuery</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/ku6Y6Zg8inw/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/06/21/emptyinput-plugin-jquerty/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 20:12:06 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[empty]]></category>
		<category><![CDATA[input]]></category>
		<category><![CDATA[js]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=246</guid>
		<description><![CDATA[Nunca fui muito de divulgar minhas classes, plugins e etc, basicamente não me empolgava muito com a idéia do open source, mas hoje ao escutar alguns podcats me empolguei e vou começar com uma bem simples que tive que fazer &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/06/21/emptyinput-plugin-jquerty/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/4UEnTbMi3IK28hN1i8Ht70K1Tbs/0/da"><img src="http://feedads.g.doubleclick.net/~a/4UEnTbMi3IK28hN1i8Ht70K1Tbs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/4UEnTbMi3IK28hN1i8Ht70K1Tbs/1/da"><img src="http://feedads.g.doubleclick.net/~a/4UEnTbMi3IK28hN1i8Ht70K1Tbs/1/di" border="0" ismap="true"></img></a></p><p>Nunca fui muito de divulgar minhas classes, plugins e etc, basicamente não me empolgava muito com a idéia do open source, mas hoje ao escutar alguns podcats me empolguei e vou começar com uma bem simples que tive que fazer você.</p>
<p>Não cheguei a pesquisar muito, para sabe se já havia algum plugin melhor ou coisa do tipo, mas acho que pode ser útil para alguém.</p>
<p><strong>﻿emptyInput</strong> &#8211; Plugin for jQuery</p>
<p>Objetivo: Adicionar texto explicativo/sugestivo a um campo de input ou textarea<br />
Versão: 0.1</p>
<p>Modo de uso:</p>
<div id="attachment_247" class="wp-caption alignnone" style="width: 670px"><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/01.png"><img class="size-full wp-image-247" title="Modo de uso emptyInput - 1" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/01.png" alt="Modo de uso emptyInput - 1" width="660" height="132" /></a><p class="wp-caption-text">Modo de uso emptyInput - 1</p></div>
<div id="attachment_248" class="wp-caption alignnone" style="width: 768px"><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/02.png"><img class="size-full wp-image-248" title="Modo de uso emptyInput - 2" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/02.png" alt="Modo de uso emptyInput - 2" width="758" height="74" /></a><p class="wp-caption-text">Modo de uso emptyInput - 2</p></div>
<div id="attachment_249" class="wp-caption alignnone" style="width: 358px"><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/03.png"><img class="size-full wp-image-249" title="Modo de uso emptyInput - 3" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/03.png" alt="Modo de uso emptyInput - 3" width="348" height="232" /></a><p class="wp-caption-text">Modo de uso emptyInput - 3</p></div>
<div id="attachment_250" class="wp-caption alignnone" style="width: 358px"><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/031.png"><img class="size-full wp-image-250" title="Modo de uso emptyInput - 4" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/031.png" alt="Modo de uso emptyInput - 4" width="348" height="232" /></a><p class="wp-caption-text">Modo de uso emptyInput - 4</p></div>
<p><a href="http://code.google.com/p/emptyinput/downloads/list">Arquivos</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F06%2F21%2Femptyinput-plugin-jquerty%2F&amp;title=emptyInput%20%E2%80%93%20Plugin%20jQuery" id="wpa2a_50"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/ku6Y6Zg8inw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/06/21/emptyinput-plugin-jquerty/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/06/21/emptyinput-plugin-jquerty/</feedburner:origLink></item>
		<item>
		<title>Pagseguro encoding – Magento</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/bVqb4Z7-J6o/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/06/14/pagseguro-encoding-magento/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 20:26:53 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[boleto]]></category>
		<category><![CDATA[boleto bancario]]></category>
		<category><![CDATA[checkout]]></category>
		<category><![CDATA[compra]]></category>
		<category><![CDATA[pagamento]]></category>
		<category><![CDATA[pagseguro]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=238</guid>
		<description><![CDATA[Dependendo do modulo de pagseguro que você tenham instalado no magento problemas com acentuação podem ocorrer ao fazer a transferência de informações para o pagseguro. Para resolver isto você pode estar lendo isso: Guia do desenvolvedor Pagseguro mas como isso &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/06/14/pagseguro-encoding-magento/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/ixy0cy9mUG4YKu_BeMmAPXrVU38/0/da"><img src="http://feedads.g.doubleclick.net/~a/ixy0cy9mUG4YKu_BeMmAPXrVU38/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ixy0cy9mUG4YKu_BeMmAPXrVU38/1/da"><img src="http://feedads.g.doubleclick.net/~a/ixy0cy9mUG4YKu_BeMmAPXrVU38/1/di" border="0" ismap="true"></img></a></p><p>Dependendo do modulo de pagseguro que você tenham instalado no magento problemas com acentuação podem ocorrer ao fazer a transferência de informações para o pagseguro.</p>
<p>Para resolver isto você pode estar lendo isso: <a title="dev pagseguro" href="https://pagseguro.uol.com.br/desenvolvedor/guia_do_desenvolvedor.jhtml" target="_blank">Guia do desenvolvedor Pagseguro</a> mas como isso vai levar muito tempo, basta adicionar um campo hidden no seu formulário de dados que indica qual o encoding que sua aplicação está.</p>
<p>Simples assim:</p>
<pre class="brush: xml; title: ; notranslate">&lt;input type=&quot;text&quot; value=&quot;utf-8&quot; /&gt;</pre>
<p>no meu exemplo alterei este arquivo<br />
app/code/community/PagSeguro/Model/Standard.php</p>
<p><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/pag.jpg"><img class="alignnone size-full wp-image-241" title="pagseguro" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/06/pag.jpg" alt="pagseguro" width="626" height="431" /></a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F06%2F14%2Fpagseguro-encoding-magento%2F&amp;title=Pagseguro%20encoding%20%E2%80%93%20Magento" id="wpa2a_52"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/bVqb4Z7-J6o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/06/14/pagseguro-encoding-magento/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/06/14/pagseguro-encoding-magento/</feedburner:origLink></item>
		<item>
		<title>Alterando Id do pedido (OrderId) – Magento</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/ayNgZCTC-cs/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/06/07/alterando-id-do-pedido-orderid-magento/#comments</comments>
		<pubDate>Mon, 07 Jun 2010 13:50:47 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[id]]></category>
		<category><![CDATA[order]]></category>
		<category><![CDATA[orderid]]></category>
		<category><![CDATA[pedido]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=233</guid>
		<description><![CDATA[Para alterar o OrderId do pedido basta você editar o seguinte arquivo: Mage/Eav/Model/Entity/Increment/Numeric.php Segue abaixo exemplo de alteração:]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/JvDpw2b3A4xH0EEE7qKQAt5r33o/0/da"><img src="http://feedads.g.doubleclick.net/~a/JvDpw2b3A4xH0EEE7qKQAt5r33o/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/JvDpw2b3A4xH0EEE7qKQAt5r33o/1/da"><img src="http://feedads.g.doubleclick.net/~a/JvDpw2b3A4xH0EEE7qKQAt5r33o/1/di" border="0" ismap="true"></img></a></p><p>Para alterar o OrderId do pedido basta você editar o seguinte arquivo: Mage/Eav/Model/Entity/Increment/Numeric.php</p>
<p>Segue abaixo exemplo de alteração:</p>
<pre class="brush: php; title: ; notranslate">

public function getNextId()
 {
 $last = $this-&gt;getLastId();

 $num = $last+1;

 return $this-&gt;format($num);
 }
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F06%2F07%2Falterando-id-do-pedido-orderid-magento%2F&amp;title=Alterando%20Id%20do%20pedido%20%28OrderId%29%20%E2%80%93%20Magento" id="wpa2a_54"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/ayNgZCTC-cs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/06/07/alterando-id-do-pedido-orderid-magento/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/06/07/alterando-id-do-pedido-orderid-magento/</feedburner:origLink></item>
		<item>
		<title>Compatibilidade e Suporte CSS</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/Q7QrKXrR2lk/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/05/22/compatibilidade-e-suporte-css/#comments</comments>
		<pubDate>Sat, 22 May 2010 22:38:52 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[Compatibilidade]]></category>
		<category><![CDATA[css2]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[suporte]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=230</guid>
		<description><![CDATA[As folhas de estilo possuem muitas propriedades e valores para suas regras e, com a imensa gama de browsers e peculiaridades de cada um, é sempre bom ter alguns guias de compatibilidade e suporte CSS à disposição. CSS3 and HTML5 &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/05/22/compatibilidade-e-suporte-css/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/IlfosGa0b922Q6kCG9OPrL7XRG8/0/da"><img src="http://feedads.g.doubleclick.net/~a/IlfosGa0b922Q6kCG9OPrL7XRG8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/IlfosGa0b922Q6kCG9OPrL7XRG8/1/da"><img src="http://feedads.g.doubleclick.net/~a/IlfosGa0b922Q6kCG9OPrL7XRG8/1/di" border="0" ismap="true"></img></a></p><p>As folhas de estilo possuem muitas propriedades e valores para suas  regras e, com a imensa gama de browsers e peculiaridades de cada um, é  sempre bom ter alguns guias de compatibilidade e suporte CSS à  disposição.</p>
<ul>
<li><a href="http://findmebyip.com/litmus#target-selector" target="_blank">CSS3 and HTML5   Properties &amp; Applications</a>;</li>
<li><a href="http://msdn.microsoft.com/en-us/library/cc351024%28VS.85%29.aspx" target="_blank">CSS  Compatibility and Internet Explorer</a>;</li>
<li><a href="http://www.quirksmode.org/m/css.html" target="_blank">CSS  contents and browser  compatibility – mobile</a></li>
<li><a href="http://centricle.com/ref/css/filters/?highlight_columns=true" target="_blank">CSS  Filters (CSS hacks)</a>;</li>
<li><a href="http://www.codestyle.org/css/media/print-BrowserSummary.shtml" target="_blank">CSS   print media browser conformance</a>;</li>
<li><a href="http://www.css3.info/modules/selector-compat/" target="_blank">Compatibility  table: CSS3 Selectors</a>;</li>
<li><a href="http://westciv.com/wiki/Experimental_CSS_compatibility_table" target="_blank">Experimental   CSS compatibility table</a>;</li>
<li><a href="http://www.campaignmonitor.com/css/" target="_blank">Guide  to CSS support in email clients</a>;</li>
<li><a href="http://www.quirksmode.org/dom/w3c_css.html" target="_blank">W3C  DOM Compatibility – CSS</a>;</li>
<li><a href="http://www.webdevout.net/browser-support-css" target="_blank">Web Browser CSS  Support</a>.</li>
</ul>
<p>Fonte: <a href="http://desenvolvimentoparaweb.com/indicacoes/ferramentas-e-recursos-para-desenvolvimento-web/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+desenvolvimentoparaweb+%28desenvolvimento+para+web%29&amp;utm_content=Google+Reader" target="_blank">Desemvolvimento para a web </a></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 125px; width: 1px; height: 1px; overflow: hidden;">http://desenvolvimentoparaweb.com/indicacoes/ferramentas-e-recursos-para-desenvolvimento-web/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+desenvolvimentoparaweb+%28desenvolvimento+para+web%29&amp;utm_content=Google+Reader</div>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F05%2F22%2Fcompatibilidade-e-suporte-css%2F&amp;title=Compatibilidade%20e%20Suporte%20CSS" id="wpa2a_56"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/Q7QrKXrR2lk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/05/22/compatibilidade-e-suporte-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/05/22/compatibilidade-e-suporte-css/</feedburner:origLink></item>
		<item>
		<title>The Best of Links #02</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/4e1RnmWmO-g/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/05/22/the-best-of-links-02/#comments</comments>
		<pubDate>Sat, 22 May 2010 22:20:32 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[AOL Desk 10]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[Gmail]]></category>
		<category><![CDATA[Hotmail]]></category>
		<category><![CDATA[Live Hotmail]]></category>
		<category><![CDATA[Lotus Notes]]></category>
		<category><![CDATA[Lotus Notes 6/7]]></category>
		<category><![CDATA[Lotus Notes 8.5]]></category>
		<category><![CDATA[Outlook]]></category>
		<category><![CDATA[Outlook 2000/03]]></category>
		<category><![CDATA[Yahoo]]></category>
		<category><![CDATA[Yahoo! Mail]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=226</guid>
		<description><![CDATA[Tabela de suporte CSS para clientes de email]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/ycHR04DK_I28PSdBKzuRnQgCXj8/0/da"><img src="http://feedads.g.doubleclick.net/~a/ycHR04DK_I28PSdBKzuRnQgCXj8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ycHR04DK_I28PSdBKzuRnQgCXj8/1/da"><img src="http://feedads.g.doubleclick.net/~a/ycHR04DK_I28PSdBKzuRnQgCXj8/1/di" border="0" ismap="true"></img></a></p><p><a title="CSS3" href="http://www.campaignmonitor.com/css/" target="_blank">Tabela de suporte CSS para clientes de email</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F05%2F22%2Fthe-best-of-links-02%2F&amp;title=The%20Best%20of%20Links%20%2302" id="wpa2a_58"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/4e1RnmWmO-g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/05/22/the-best-of-links-02/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/05/22/the-best-of-links-02/</feedburner:origLink></item>
		<item>
		<title>Selecionar valor de input text – Javascript</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/3gCllOTFC_g/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/05/11/selecionar-valor-em-input-type-text/#comments</comments>
		<pubDate>Wed, 12 May 2010 01:32:19 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[input]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[selecionar]]></category>
		<category><![CDATA[select()]]></category>
		<category><![CDATA[valeu]]></category>
		<category><![CDATA[valor]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=217</guid>
		<description><![CDATA[Hoje dando uma olhada em javascript para facilitar um processo de download de videos resolvi usar  função select(), que no entanto só havia usado uma vez. Ela é interessante pois seleciona o valor de um determinado input como podemos ver &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/05/11/selecionar-valor-em-input-type-text/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/oYo8wgB5ug5i57WzOahdZcwYAVs/0/da"><img src="http://feedads.g.doubleclick.net/~a/oYo8wgB5ug5i57WzOahdZcwYAVs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/oYo8wgB5ug5i57WzOahdZcwYAVs/1/da"><img src="http://feedads.g.doubleclick.net/~a/oYo8wgB5ug5i57WzOahdZcwYAVs/1/di" border="0" ismap="true"></img></a></p><p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } -->Hoje dando uma olhada em javascript para facilitar um processo de download de videos resolvi usar  função <em>select()</em>, que no entanto só havia usado uma vez. Ela é interessante pois seleciona o valor de um determinado input como podemos ver com esse código abaixo:</p>
<pre class="brush: jscript; title: ; notranslate">

//&lt;input type=&quot;text&quot; onmouseover=&quot;selecionar(this)&quot; value=&quot;www.jeffersonluis.com/blog&quot; /&gt;

function selecionar(elm){
 elm.select();
}
</pre>
<p>Caso vc procure algo para selecionar e cópia o texto, não encontrara em js por questões de segurança. existem funções em actionScript para fazer isto.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F05%2F11%2Fselecionar-valor-em-input-type-text%2F&amp;title=Selecionar%20valor%20de%20input%20text%20%E2%80%93%20Javascript" id="wpa2a_60"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/3gCllOTFC_g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/05/11/selecionar-valor-em-input-type-text/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/05/11/selecionar-valor-em-input-type-text/</feedburner:origLink></item>
		<item>
		<title>The Best of Links #01</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/_OBd-ldqdNw/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/05/06/the-best-of-links-01/#comments</comments>
		<pubDate>Thu, 06 May 2010 14:39:18 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[funções]]></category>
		<category><![CDATA[internas]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=213</guid>
		<description><![CDATA[PHP &#8211; Performance de funções internas]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/PHC4dbBdrLyTt8Hr-KtwDD2xqK4/0/da"><img src="http://feedads.g.doubleclick.net/~a/PHC4dbBdrLyTt8Hr-KtwDD2xqK4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/PHC4dbBdrLyTt8Hr-KtwDD2xqK4/1/da"><img src="http://feedads.g.doubleclick.net/~a/PHC4dbBdrLyTt8Hr-KtwDD2xqK4/1/di" border="0" ismap="true"></img></a></p><p><a title="phpbench" href="http://www.phpbench.com/" target="_blank">PHP &#8211; Performance de funções internas</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F05%2F06%2Fthe-best-of-links-01%2F&amp;title=The%20Best%20of%20Links%20%2301" id="wpa2a_62"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/_OBd-ldqdNw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/05/06/the-best-of-links-01/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/05/06/the-best-of-links-01/</feedburner:origLink></item>
		<item>
		<title>Desafio PHP #03</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/P2-kCtrIOAE/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/04/24/desafio-php-03/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 23:01:44 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[calculos]]></category>
		<category><![CDATA[desafio]]></category>
		<category><![CDATA[interpreteção]]></category>
		<category><![CDATA[números]]></category>
		<category><![CDATA[zce]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=207</guid>
		<description><![CDATA[Agora partindo para algo bem mais avançado: Boa sorte]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/AMvSXilnBjQvH3C5G0rgxxtjIfo/0/da"><img src="http://feedads.g.doubleclick.net/~a/AMvSXilnBjQvH3C5G0rgxxtjIfo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/AMvSXilnBjQvH3C5G0rgxxtjIfo/1/da"><img src="http://feedads.g.doubleclick.net/~a/AMvSXilnBjQvH3C5G0rgxxtjIfo/1/di" border="0" ismap="true"></img></a></p><p>Agora partindo para algo bem mais avançado:</p>
<pre class="brush: php; title: ; notranslate">

if(0.1 + 0.2 == 0.3){

echo 'Valores diferentes!';

}else{

echo 'Valores iguais!';

}
</pre>
<p>Boa sorte <img src='http://www.jeffersonluis.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F04%2F24%2Fdesafio-php-03%2F&amp;title=Desafio%20PHP%20%2303" id="wpa2a_64"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/P2-kCtrIOAE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/04/24/desafio-php-03/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/04/24/desafio-php-03/</feedburner:origLink></item>
		<item>
		<title>Desafio PHP #02</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/-yIKgXSyMVU/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/04/24/desafio-php-2/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 22:56:54 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[avancado]]></category>
		<category><![CDATA[interpreteção]]></category>
		<category><![CDATA[números]]></category>
		<category><![CDATA[zce]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/2010/04/24/desafio-php-2/</guid>
		<description><![CDATA[Blz galera, segue mais um desafio de php, este vai exigir um conhecimento mais avançado da interpretação php. Lembrando A ideia do desafio é conhecer mais sobre como o php interpreta determinadas funções, então não nos basta alterações no código &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/04/24/desafio-php-2/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/qTXhc8OTHt7hagJylHBQGZZSQQc/0/da"><img src="http://feedads.g.doubleclick.net/~a/qTXhc8OTHt7hagJylHBQGZZSQQc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/qTXhc8OTHt7hagJylHBQGZZSQQc/1/da"><img src="http://feedads.g.doubleclick.net/~a/qTXhc8OTHt7hagJylHBQGZZSQQc/1/di" border="0" ismap="true"></img></a></p><p>Blz galera,<br />
segue mais um desafio de php, este vai exigir um conhecimento mais avançado da interpretação php.</p>
<pre class="brush: php; title: ; notranslate">
if(09 == 9){
     echo '#1 true';
}else{
      echo '#1 false';
}

if(&quot;09&quot; == 9){
     echo '#2 true';
}else{
      echo '#2 false';
}
</pre>
<p><strong>Lembrando</strong></p>
<p>A ideia do desafio é conhecer mais sobre como o php interpreta determinadas funções, então não nos basta alterações no código e sim o sabermos o porque o php interpreta desta forma.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F04%2F24%2Fdesafio-php-2%2F&amp;title=Desafio%20PHP%20%2302" id="wpa2a_66"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/-yIKgXSyMVU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/04/24/desafio-php-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/04/24/desafio-php-2/</feedburner:origLink></item>
		<item>
		<title>Desafio PHP #01</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/KZDczgnRmeo/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/04/21/desafio-php-01/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 01:21:00 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[certificação]]></category>
		<category><![CDATA[desafio]]></category>
		<category><![CDATA[strpos]]></category>
		<category><![CDATA[zce]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=200</guid>
		<description><![CDATA[Código do desafio: Responda o porque deste resultado, podem ser citadas função ou melhorias a serem feitas para que o código funcione corretamente. Não poste simplesmente o código corrigido de uma breve explicação sobre o erro do tipo:&#8221;Esta função tem &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/04/21/desafio-php-01/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/P3Z7yPV-4eRBbyvGr4LMtRBzWRg/0/da"><img src="http://feedads.g.doubleclick.net/~a/P3Z7yPV-4eRBbyvGr4LMtRBzWRg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/P3Z7yPV-4eRBbyvGr4LMtRBzWRg/1/da"><img src="http://feedads.g.doubleclick.net/~a/P3Z7yPV-4eRBbyvGr4LMtRBzWRg/1/di" border="0" ismap="true"></img></a></p><p>Código do desafio:</p>
<pre class="brush: php; title: ; notranslate">
 if (strpos('novas noticias','no')) {
 print 'encontrei';
 } else {
 print 'não encontrei';
 }
 </pre>
<p>Responda o porque deste resultado, podem ser citadas função ou melhorias a serem feitas para que o código funcione corretamente. Não poste simplesmente o código corrigido de uma breve explicação sobre o erro do tipo:&#8221;Esta função tem como primeiro parâmetro um array&#8221;.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F04%2F21%2Fdesafio-php-01%2F&amp;title=Desafio%20PHP%20%2301" id="wpa2a_68"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/KZDczgnRmeo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/04/21/desafio-php-01/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/04/21/desafio-php-01/</feedburner:origLink></item>
		<item>
		<title>ZF – Criando modulos</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/1ewPsgU-cC0/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/04/02/zf-criando-modulos/#comments</comments>
		<pubDate>Fri, 02 Apr 2010 22:18:43 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[modules]]></category>
		<category><![CDATA[modulos]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[zend]]></category>
		<category><![CDATA[zf]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=190</guid>
		<description><![CDATA[Beleza galera estreando a categoria de ZF(Zend Framework) vou dar uma dica de como criar módulos; Módulos servem para você separar seu sistema em áreas especificas, para melhor compreender vamos usar de exemplo um blog onde terão duas áreas: frontend &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/04/02/zf-criando-modulos/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/NmvCOwpG2k0n5KL4QiiklDQCLsY/0/da"><img src="http://feedads.g.doubleclick.net/~a/NmvCOwpG2k0n5KL4QiiklDQCLsY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/NmvCOwpG2k0n5KL4QiiklDQCLsY/1/da"><img src="http://feedads.g.doubleclick.net/~a/NmvCOwpG2k0n5KL4QiiklDQCLsY/1/di" border="0" ismap="true"></img></a></p><p>Beleza galera estreando a categoria de ZF(Zend Framework) vou dar uma dica de como criar módulos;</p>
<p>Módulos servem para você separar seu sistema em áreas especificas, para melhor compreender vamos usar de exemplo um blog onde terão duas áreas: frontend e admin.</p>
<p>seja como ficara nossa estrutura de pastas:</p>
<div id="attachment_193" class="wp-caption alignnone" style="width: 285px"><a href="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/04/zf.jpg"><img class="size-full wp-image-193" title="zend framework" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/04/zf.jpg" alt="zf modulos" width="275" height="239" /></a><p class="wp-caption-text">zf modulos</p></div>
<p>temos dois modos de configurar, pelo bootstrap:<br />
<strong>$front-&gt;addModuleDirectory(&#8216;/meublog/application&#8217;);</strong><br />
ou pelo arquivo de configuração do sistema:<br />
<strong>resources.frontController.moduleDirectory = APPLICATION_PATH</strong></p>
<p>após a configuração vc deve alterar o nome das classes controllers que  não pertencem ao default ex:<br />
<strong>Admin_IndexController</strong> para o index do modulo admin</p>
<p>Simples e rápido <img src='http://www.jeffersonluis.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F04%2F02%2Fzf-criando-modulos%2F&amp;title=ZF%20%E2%80%93%20Criando%20modulos" id="wpa2a_70"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/1ewPsgU-cC0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/04/02/zf-criando-modulos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/04/02/zf-criando-modulos/</feedburner:origLink></item>
		<item>
		<title>PHP – Operadores Bit-a-bit (Video Aula)</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/v1haLZ174gA/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/03/28/php-operadores-bit-a-bit-video-aula/#comments</comments>
		<pubDate>Sun, 28 Mar 2010 15:27:26 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[binario]]></category>
		<category><![CDATA[bit]]></category>
		<category><![CDATA[bit-a-bit]]></category>
		<category><![CDATA[bits]]></category>
		<category><![CDATA[operadores]]></category>
		<category><![CDATA[video aula]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=186</guid>
		<description />
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/2Bax86QZczJmPghCCFu-sH0XIdE/0/da"><img src="http://feedads.g.doubleclick.net/~a/2Bax86QZczJmPghCCFu-sH0XIdE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/2Bax86QZczJmPghCCFu-sH0XIdE/1/da"><img src="http://feedads.g.doubleclick.net/~a/2Bax86QZczJmPghCCFu-sH0XIdE/1/di" border="0" ismap="true"></img></a></p><p style="text-align: center;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/8cQ2fjLiBrI&amp;hl=pt_BR&amp;fs=1&amp;rel=0&amp;color1=0x2b405b&amp;color2=0x6b8ab6" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/8cQ2fjLiBrI&amp;hl=pt_BR&amp;fs=1&amp;rel=0&amp;color1=0x2b405b&amp;color2=0x6b8ab6" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F03%2F28%2Fphp-operadores-bit-a-bit-video-aula%2F&amp;title=PHP%20%E2%80%93%20Operadores%20Bit-a-bit%20%28Video%20Aula%29" id="wpa2a_72"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/v1haLZ174gA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/03/28/php-operadores-bit-a-bit-video-aula/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/03/28/php-operadores-bit-a-bit-video-aula/</feedburner:origLink></item>
		<item>
		<title>Magento – Removendo sesseon id(SID) do link</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/DGFo5ie7KL4/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/03/18/magento-removendo-sesseon-idsid-do-link/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 18:30:26 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[session id]]></category>
		<category><![CDATA[sid]]></category>
		<category><![CDATA[url]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=179</guid>
		<description><![CDATA[Primeiro devemos saber pra que seve o session id, segue em breve descrição: O SID sempre é passado quando se muda da url insegura para a url segura e vice-versa, ou em qualquer mudança de url aonde a sessão seria &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/03/18/magento-removendo-sesseon-idsid-do-link/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/CaLqnSIE6wXE_j3MHid0bG99aV0/0/da"><img src="http://feedads.g.doubleclick.net/~a/CaLqnSIE6wXE_j3MHid0bG99aV0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/CaLqnSIE6wXE_j3MHid0bG99aV0/1/da"><img src="http://feedads.g.doubleclick.net/~a/CaLqnSIE6wXE_j3MHid0bG99aV0/1/di" border="0" ismap="true"></img></a></p><p>Primeiro devemos saber pra que seve o session id, segue em breve descrição:</p>
<blockquote><p>O SID sempre é passado quando se muda da url insegura para a url segura e vice-versa, ou em qualquer mudança de url aonde a sessão seria perdida caso o SID não fosse passado</p></blockquote>
<p>Recentemente tive esse problema e alem da url o javascript estava causando erros de insegurança, fucei muito o codigo e acabei descobrindo que era muito mais simples do que eu imaginava.</p>
<p>No meu caso foi a baseUrl onde eu coloque o endereço de forma errada (http://site.com.br/loja/) que deveria estar como (http://www.site.com.br/loja/).</p>
<p>Para alterar a baseUrl vá ao admin do sistema no menu sistema&gt;configurações&gt;web</p>
<p><em><strong>EDIT</strong></em></p>
<p>nem tudo são flores, caso a alternativa acima não lhe ajude a solução será reescrever a url com o .htaccess fazendo com que se o usuário digitar<em> http://minhaloja.com</em> será redirecionado para <em>http://www.minhaloja.com</em>; para fazermos isto devemos ir no admin e colocar nosso endereço com o <em>www.</em> agora vamos no arquivo .haccess e adicionamos isto:</p>
<p>RewriteBase /<br />
RewriteCond %{HTTP_HOST} !^www\..*<br />
RewriteRule ^.*$ http://www.minhaloja.com.br%{REQUEST_URI} [R=permanent,L]</p>
<p>dentro do bloco<br />
<em>&lt;IfModule mod_rewrite.c&gt; </em><br />
e depos de<br />
<em>RewriteRule .* index.php [L] </em></p>
<p>Caso sua loja virtual estaja em alguma subpasta indiquea no <em>RewriteBase </em>Ex: <em>RewriteBase /loja/</em> para uma loja com a url assim<em> http://www.minhaloja.com.br/loja</em></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F03%2F18%2Fmagento-removendo-sesseon-idsid-do-link%2F&amp;title=Magento%20%E2%80%93%20Removendo%20sesseon%20id%28SID%29%20do%20link" id="wpa2a_74"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/DGFo5ie7KL4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/03/18/magento-removendo-sesseon-idsid-do-link/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/03/18/magento-removendo-sesseon-idsid-do-link/</feedburner:origLink></item>
		<item>
		<title>Acessando admin do magento 1.4.1 no servidor local</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/rNfeO4AUTVk/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/03/11/acessando-admin-do-magento-1-4-1-no-servidor-local/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 18:40:24 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[1.4.0.1]]></category>
		<category><![CDATA[1.4.1]]></category>
		<category><![CDATA[acessar]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[administração]]></category>
		<category><![CDATA[local]]></category>
		<category><![CDATA[servidor]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=169</guid>
		<description><![CDATA[Solução definitiva para acessar admin no Magento 1.4.1 como na versão 1.3.2 as modificação serão no arquivo: app\code\core\Mage\Core\Model\Session\Abstract\varien.php entre as linha 80 a 100. Segue abaixo as alterações:]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/DAO9hgvsuTnOC9zgKcUh2d9SzwY/0/da"><img src="http://feedads.g.doubleclick.net/~a/DAO9hgvsuTnOC9zgKcUh2d9SzwY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/DAO9hgvsuTnOC9zgKcUh2d9SzwY/1/da"><img src="http://feedads.g.doubleclick.net/~a/DAO9hgvsuTnOC9zgKcUh2d9SzwY/1/di" border="0" ismap="true"></img></a></p><p>Solução definitiva para acessar admin no Magento 1.4.1<br />
como na versão 1.3.2 as modificação serão no arquivo: app\code\core\Mage\Core\Model\Session\Abstract\varien.php entre as linha 80 a 100.<br />
Segue abaixo as alterações:</p>
<div id="attachment_175" class="wp-caption alignnone" style="width: 541px"><img class="size-full wp-image-175" title="magento_local14" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/03/magento_local141.jpg" alt="Magento 1.4.1" width="531" height="419" /><p class="wp-caption-text">Magento 1.4.1</p></div>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F03%2F11%2Facessando-admin-do-magento-1-4-1-no-servidor-local%2F&amp;title=Acessando%20admin%20do%20magento%201.4.1%20no%20servidor%20local" id="wpa2a_76"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/rNfeO4AUTVk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/03/11/acessando-admin-do-magento-1-4-1-no-servidor-local/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/03/11/acessando-admin-do-magento-1-4-1-no-servidor-local/</feedburner:origLink></item>
		<item>
		<title>Dando permissão em pastas/arquivos no Linux</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/sor4NgDuD-0/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/03/07/dando-permissao-em-pastasarquivos-no-linux/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 04:19:20 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[777]]></category>
		<category><![CDATA[chmod]]></category>
		<category><![CDATA[pastas]]></category>
		<category><![CDATA[permissao]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=166</guid>
		<description><![CDATA[Para dar permissão de escrita para o grupo no diretório: $sudo chmod -R g+rw /var/www/diretorio O -R deixa a operação recursiva nos diretórios. Para que todos os arquivos criados dentro do diretório sejam automaticamente do grupo em questão: $sudo chmod &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/03/07/dando-permissao-em-pastasarquivos-no-linux/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/ts4N4Z4zq3RS_Q-idiI891ulg0s/0/da"><img src="http://feedads.g.doubleclick.net/~a/ts4N4Z4zq3RS_Q-idiI891ulg0s/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ts4N4Z4zq3RS_Q-idiI891ulg0s/1/da"><img src="http://feedads.g.doubleclick.net/~a/ts4N4Z4zq3RS_Q-idiI891ulg0s/1/di" border="0" ismap="true"></img></a></p><p>Para dar permissão de escrita para o grupo no diretório:<br />
$sudo chmod -R g+rw /var/www/diretorio</p>
<p><em>O -R deixa a operação recursiva nos diretórios.</em></p>
<p>Para que todos os arquivos criados dentro do diretório sejam automaticamente<br />
do grupo em questão:<br />
$sudo chmod -R g+s /var/www/diretorio</p>
<p>Para mais informações:<br />
chgrp &#8211;help<br />
chmod &#8211;help<br />
man chgrp<br />
man chmod</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F03%2F07%2Fdando-permissao-em-pastasarquivos-no-linux%2F&amp;title=Dando%20permiss%C3%A3o%20em%20pastas%2Farquivos%20no%20Linux" id="wpa2a_78"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/sor4NgDuD-0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/03/07/dando-permissao-em-pastasarquivos-no-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/03/07/dando-permissao-em-pastasarquivos-no-linux/</feedburner:origLink></item>
		<item>
		<title>Last FM Free</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/9imBiefkjEc/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/02/20/last-fm-free/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 00:17:10 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Utilidades]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[lastfm]]></category>
		<category><![CDATA[musicas]]></category>
		<category><![CDATA[online]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=163</guid>
		<description><![CDATA[Chega de se lamentar porque o last fm não é mais gratuito, hoje encontrei uma ótima alternativa e por cima é gratuita. Grooveshark]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/FvgH3wGh2L7jDoYvx6BSjncQ7Ms/0/da"><img src="http://feedads.g.doubleclick.net/~a/FvgH3wGh2L7jDoYvx6BSjncQ7Ms/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/FvgH3wGh2L7jDoYvx6BSjncQ7Ms/1/da"><img src="http://feedads.g.doubleclick.net/~a/FvgH3wGh2L7jDoYvx6BSjncQ7Ms/1/di" border="0" ismap="true"></img></a></p><p>Chega de se lamentar porque o last fm não é mais gratuito, hoje encontrei uma ótima alternativa e por cima é <em>gratuita</em>.</p>
<p><strong><a href="http://listen.grooveshark.com">Grooveshark</a></strong></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F02%2F20%2Flast-fm-free%2F&amp;title=Last%20FM%20Free" id="wpa2a_80"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/9imBiefkjEc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/02/20/last-fm-free/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/02/20/last-fm-free/</feedburner:origLink></item>
		<item>
		<title>Ativando mod_rewrite do Apache2 no Ubuntu</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/P_ISxOIyNQ4/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/02/14/ativando-mod_rewrite-do-apache2-no-ubuntu/#comments</comments>
		<pubDate>Sun, 14 Feb 2010 16:41:59 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[mod_rewrite]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[rewrite]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=159</guid>
		<description><![CDATA[Primeiro adicionamos o modulo de reescrita no apache: sudo a2enmod rewrite Agora vamos habilitar a reescrita no arquivo /etc/apache2/apache2.conf adicionando isto: RewriteEngine On Agora um detalhe importante que eu estava me batendo para descobrir, no arquivo /etc/apache2/sites-available/default devemos alterar isto: &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/02/14/ativando-mod_rewrite-do-apache2-no-ubuntu/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/TC-CXXzpBhMrnVN-5Za_DTfy9IA/0/da"><img src="http://feedads.g.doubleclick.net/~a/TC-CXXzpBhMrnVN-5Za_DTfy9IA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/TC-CXXzpBhMrnVN-5Za_DTfy9IA/1/da"><img src="http://feedads.g.doubleclick.net/~a/TC-CXXzpBhMrnVN-5Za_DTfy9IA/1/di" border="0" ismap="true"></img></a></p><p>Primeiro adicionamos o modulo de reescrita no apache:<br />
<em><strong>sudo a2enmod rewrite</strong></em></p>
<p>Agora vamos habilitar a reescrita no arquivo <em>/etc/apache2/apache2.conf </em>adicionando isto:<br />
<em><strong>RewriteEngine On</strong></em></p>
<p>Agora um detalhe importante que eu estava me batendo para descobrir, no arquivo <em>/etc/apache2/sites-available/default</em><br />
devemos alterar isto:<br />
<em><strong>AllowOverride none ;</strong></em><br />
por isto:<br />
<em><strong>AllowOverride All ;</strong></em></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F02%2F14%2Fativando-mod_rewrite-do-apache2-no-ubuntu%2F&amp;title=Ativando%20mod_rewrite%20do%20Apache2%20no%20Ubuntu" id="wpa2a_82"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/P_ISxOIyNQ4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/02/14/ativando-mod_rewrite-do-apache2-no-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/02/14/ativando-mod_rewrite-do-apache2-no-ubuntu/</feedburner:origLink></item>
		<item>
		<title>10 coisas que um novo usuário do linux deve desaprender</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/WCuDT3vd0Hw/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/02/12/10-coisas-que-um-novo-usuario-do-linux-deve-desaprender/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 23:32:08 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[windows fail]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=154</guid>
		<description><![CDATA[1. Reboot não é um procedimento de operação padrão (em inglês, Standard Operating Procedure, ou simplesmente SOP). Quando uma aplicação trava, ela não afeta outras aplicações ou o próprio sistema; você pode matá-la (kill) sem afetar outras partes. O mesmo &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/02/12/10-coisas-que-um-novo-usuario-do-linux-deve-desaprender/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/R9A4t3iRnvkUMOVC3C5Jo-yBH_4/0/da"><img src="http://feedads.g.doubleclick.net/~a/R9A4t3iRnvkUMOVC3C5Jo-yBH_4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/R9A4t3iRnvkUMOVC3C5Jo-yBH_4/1/da"><img src="http://feedads.g.doubleclick.net/~a/R9A4t3iRnvkUMOVC3C5Jo-yBH_4/1/di" border="0" ismap="true"></img></a></p><p>1. Reboot não é um procedimento de operação padrão (em inglês, Standard Operating Procedure, ou simplesmente SOP). Quando uma aplicação trava, ela não afeta outras aplicações ou o próprio sistema; você pode matá-la (kill) sem afetar outras partes. O mesmo acontece para instalações de novas aplicações ou atualizações (com exceção de atualização do kernel). Ou seja, você verá raramente mensagens do tipo “você deve reiniciar o sistema par que as atualizações tenham efeito“;</p>
<p>2. “É recomendado que você feche todas as aplicações antes de continuar” é uma mensagem que você quase não verá. Não faz sentido ter que parar de fazer algo – ouvir música, navegar na web, etc… – para fazer algo. Uma vez que é um sistema multitarefas, não?</p>
<p>3. Você não terá que renovar sua assinatura de sofwtare antivirus/antimalmware. É um sistema seguro;</p>
<p>4. as distros Linux vêm com uma grande quantidade de aplicativos para as mais diversas finalidades. Veja no seu CD de instalação se já não existe um, ou procure no gerenciador de pacotes. Além do que, a grande maioria é free! Ou seja, não precisará sair correndo para uma loja de venda de softwares!</p>
<p>5. Como a maioria dos aplicativos é open source, você raramente verá caixas de diálogo com EULAs, terá que digitar chaves de liberação de um software, ou ficará recebendo e-mails de aviso de expiração;</p>
<p>6. o suportre a hardware melhorou demais, e existem drivers genéricos para eles. Logo, você não terá que ficar instalando um driver X para um pendrive e outro Y para outro pendrive (por exemplo): é plugar o mesmo e usar, independente da marca;</p>
<p>7. Você não terá que procurar um equivalente ao “PC Doctor” para procurar erros e inconsistências no sistema. Linux não instala um monte de aplicações do nada, não fica mais lento com o tempo e não corrompe arquivos;</p>
<p>8. Defrag. Não existe uma ferramenta de defrag no Linux. Uma vez que ele não fragmenta seu disco;</p>
<p>9. No equivalente ao menu Iniciar, você verá os aplicativos agrupados por tipo (Internet, Escritório, Desenvolvimento, Jogos, etc…) ao invés de vê-los agrupados por marca ou empresa fabricante. É muito mais intuitivo;</p>
<p>10. Seu computador é seu. Nenhum aplicativo fica enviando dados para o fabricante, monitorando o que você faz ou deixa de fazer, qual sua configuração de hardware ou pedindo para revalidar o software.<br />
FONTE: <a title="Chris B." href="http://www.chrisb.com.br/blog/10-coisas-que-um-novo-usuario-do-linux-deve-desaprender/" target="_blank">Chris B.</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F02%2F12%2F10-coisas-que-um-novo-usuario-do-linux-deve-desaprender%2F&amp;title=10%20coisas%20que%20um%20novo%20usu%C3%A1rio%20do%20linux%20deve%20desaprender" id="wpa2a_84"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/WCuDT3vd0Hw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/02/12/10-coisas-que-um-novo-usuario-do-linux-deve-desaprender/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/02/12/10-coisas-que-um-novo-usuario-do-linux-deve-desaprender/</feedburner:origLink></item>
		<item>
		<title>Dicas para a instalação do Magento #01</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/TUbcFMppuQI/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/02/12/dicas-para-a-instalacao-do-magento-01/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 17:08:42 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Magento]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=149</guid>
		<description><![CDATA[Problema: tento instalar mas não consigo passar da segunda etapa e não mostra nenhum erro. Possivel solução: Ao informar o nome do banco de dados certifique-se que ele já existe.]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/dBCQvbrOU1oyQNJ3A-NxvkJKu5w/0/da"><img src="http://feedads.g.doubleclick.net/~a/dBCQvbrOU1oyQNJ3A-NxvkJKu5w/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/dBCQvbrOU1oyQNJ3A-NxvkJKu5w/1/da"><img src="http://feedads.g.doubleclick.net/~a/dBCQvbrOU1oyQNJ3A-NxvkJKu5w/1/di" border="0" ismap="true"></img></a></p><p><img class="alignnone size-medium wp-image-151" title="magento" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2010/02/magento-300x141.png" alt="magento" width="300" height="141" /><br />
Problema: tento instalar mas não consigo passar da segunda etapa e não mostra nenhum erro.</p>
<p>Possivel solução: Ao informar o nome do banco de dados certifique-se que ele já existe.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F02%2F12%2Fdicas-para-a-instalacao-do-magento-01%2F&amp;title=Dicas%20para%20a%20instala%C3%A7%C3%A3o%20do%20Magento%20%2301" id="wpa2a_86"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/TUbcFMppuQI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/02/12/dicas-para-a-instalacao-do-magento-01/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/02/12/dicas-para-a-instalacao-do-magento-01/</feedburner:origLink></item>
		<item>
		<title>(Fast tip) Como saber a tecla digitada – Javascript</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/nFxmcc3A1kU/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/01/31/fast-tip-como-pegar-a-tecla-digitada-javascript/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 01:53:31 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Fast Tip]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[digitado]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[key code]]></category>
		<category><![CDATA[tecla]]></category>
		<category><![CDATA[teclado]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=143</guid>
		<description><![CDATA[Para verificar qual tecla foi pressionada você pode utilizar este código abaixo: Code bonus: Exemplo aqui.]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/1RZtAqiytGskW9qwk7RUg0eIUl4/0/da"><img src="http://feedads.g.doubleclick.net/~a/1RZtAqiytGskW9qwk7RUg0eIUl4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/1RZtAqiytGskW9qwk7RUg0eIUl4/1/da"><img src="http://feedads.g.doubleclick.net/~a/1RZtAqiytGskW9qwk7RUg0eIUl4/1/di" border="0" ismap="true"></img></a></p><p>Para verificar qual tecla foi pressionada você pode utilizar este código abaixo:</p>
<pre class="brush: jscript; title: ; notranslate">
//Passamos como parâmetro passamos a ação executada
document.onkeyup = function(e){
   alert(e.which); //exibimos o método which da ação, que será o código da tecla
}
</pre>
<p>Code bonus:<br />
<a href="http://www.jeffersonluis.com/exemplos/arquivos/js/getkeycode.html"><strong>Exemplo aqui.</strong></a></p>
<pre class="brush: jscript; title: ; notranslate">
		document.onkeyup = function(e){
var teclas = new Array(8,9,13,16,17,18,19,20,27,32,33,34,35,36,37,38,39,40,45,46,48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,
80,81,82,83,84,85,86,87,88,89,90,91,92,93,96,97,98,99,100,101,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,
144,145,186,187,188,189,190,191,192,219,220,221,222);
var teclasValores = new Array('backspace','tab','enter','shift','ctrl','alt','pause/break','caps lock','escape','escape','page up','page down','end','home','left arrow','up arrow','right arrow','down arrow','insert','delete',0,1,2,3,4,5,6,7,8,9,'a','b','c','d','e','f','g','h','i','j','k','l','m','n',
'o','p','q','r','s','t','u','v','w','x','y','z','left window key','right window key','select key','numpad 0','numpad 1','numpad 2','numpad 3','numpad 4',
'numpad 5','numpad 6','numpad 7','numpad 8','numpad 9','multiply','add','subtract','decimal point','divide','f1','f2','f3','f4','f5','f6','f7','f8','f9',
'f10','f11','f12','num lock','scroll lock','semi-colon','equal sign','comma','dash','period','forward slash','grave accent','open bracket','back slash','close braket','single quote');
console.log(e);
for(tecla in teclas){
					if(e.which == teclas[tecla]){
						document.getElementById('texto').value = 'code('+teclas[tecla]+') = '+teclasValores[tecla];
					}
				}
			}
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F01%2F31%2Ffast-tip-como-pegar-a-tecla-digitada-javascript%2F&amp;title=%28Fast%20tip%29%20Como%20saber%20a%20tecla%20digitada%20%E2%80%93%20Javascript" id="wpa2a_88"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/nFxmcc3A1kU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/01/31/fast-tip-como-pegar-a-tecla-digitada-javascript/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/01/31/fast-tip-como-pegar-a-tecla-digitada-javascript/</feedburner:origLink></item>
		<item>
		<title>(Fast Tip)Como pegar todos os elementos da pagina com javascript</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/2X8Vnb06v-0/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/01/30/fast-tipcomo-pegar-todos-os-elementos-da-pagina-com-javascript/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 22:47:44 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Fast Tip]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[get all]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[todos elementos]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=136</guid>
		<description><![CDATA[Simples fácil e rápido. code bonus fiz este script para testar a funcionalidade Para os novos no mundo do js deixo uma dica: sempre lei e interprete os scripts que outras pessoas fazem, assim se aprende bem mais do que &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/01/30/fast-tipcomo-pegar-todos-os-elementos-da-pagina-com-javascript/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/GxzUqPMs6G6jj7KXBXS08_0FGXM/0/da"><img src="http://feedads.g.doubleclick.net/~a/GxzUqPMs6G6jj7KXBXS08_0FGXM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/GxzUqPMs6G6jj7KXBXS08_0FGXM/1/da"><img src="http://feedads.g.doubleclick.net/~a/GxzUqPMs6G6jj7KXBXS08_0FGXM/1/di" border="0" ismap="true"></img></a></p><p><strong>Simples fácil e rápido.</strong></p>
<pre class="brush: jscript; title: ; notranslate">
onload = function(){
        var todosElementos = getElementsbyTagName(*);
}
</pre>
<p><strong>code bonus</strong><br />
fiz este script para testar a funcionalidade</p>
<pre class="brush: jscript; title: ; notranslate">
onload = function(){
			var body = document.getElementsByTagName('body')[0];
			var children = body.getElementsByTagName('*');
			var child;
			for(child in children){
				if(children[child] != undefined){

					children[child].style.border = &quot;solid 1px #EFEFEF&quot;;

					if(children[child].nodeName == 'A')
						children[child].style.borderBottom = 'solid 2px red';
				}
			}
		}
</pre>
<p><br/><br />
Para os novos no mundo do js deixo uma dica:<br />
<em>sempre lei e interprete os scripts que outras pessoas fazem, assim se aprende bem mais do que um simples post.</em></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F01%2F30%2Ffast-tipcomo-pegar-todos-os-elementos-da-pagina-com-javascript%2F&amp;title=%28Fast%20Tip%29Como%20pegar%20todos%20os%20elementos%20da%20pagina%20com%20javascript" id="wpa2a_90"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/2X8Vnb06v-0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/01/30/fast-tipcomo-pegar-todos-os-elementos-da-pagina-com-javascript/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/01/30/fast-tipcomo-pegar-todos-os-elementos-da-pagina-com-javascript/</feedburner:origLink></item>
		<item>
		<title>English is essential</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/8h1129deKvA/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/01/23/english-is-essential/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 17:34:44 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[estudo]]></category>
		<category><![CDATA[inglês]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/2010/01/23/english-is-essential/</guid>
		<description><![CDATA[O domínio do inglês é indispensável para profissionais de TI hoje em dia, temos que manter nosso conhecimento em equivalencia, de nada adianta compreendermos de um assunto muito bem, se caso ele venha a ser atualizado ou modificado não compreendermos &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/01/23/english-is-essential/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Pk90fAHoYWqwMJFZTFraXI9B3zk/0/da"><img src="http://feedads.g.doubleclick.net/~a/Pk90fAHoYWqwMJFZTFraXI9B3zk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Pk90fAHoYWqwMJFZTFraXI9B3zk/1/da"><img src="http://feedads.g.doubleclick.net/~a/Pk90fAHoYWqwMJFZTFraXI9B3zk/1/di" border="0" ismap="true"></img></a></p><p>O domínio do<em> inglês</em> é indispensável para profissionais de TI hoje em dia, temos que manter nosso conhecimento em equivalencia, de nada adianta compreendermos de um assunto muito bem, se caso ele venha a ser atualizado ou modificado não compreendermos seu simples manual em <em>inglês</em>.</p>
<p>Segue um trecho de uma apostila de inglês demonstrando a importância de <em>inglês</em>:</p>
<blockquote><p>Mais de 80% dos documentos e das comunicações feitas através da Internet encontram-se em inglês. Apenas 0,7% do oceano de informação que é a Internet está em português. É perfeitamente possível usar a Internet e se divertir muito navegando apenas por sites escritos em português. Fazer isto entretanto é o equivalente a ir à praia, não entrar na água e ficar se molhando com um baldinho de água que alguém encher para você.</p></blockquote>
<p><em><br />
Post recomendado para aqueles que estão ou vão começar a estudar inglês por conta própria: <a href="http://www.englishexperts.com.br/2007/05/31/autodidata-em-ingles-parte-iii/">Perigos do autodidatismo</a>.</em></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F01%2F23%2Fenglish-is-essential%2F&amp;title=English%20is%20essential" id="wpa2a_92"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/8h1129deKvA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/01/23/english-is-essential/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/01/23/english-is-essential/</feedburner:origLink></item>
		<item>
		<title>Manipulando eventos com JavaScript</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/QuU9X_XRGb0/</link>
		<comments>http://www.jeffersonluis.com/blog/2010/01/06/manipulando-eventos-com-javascript/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 01:17:47 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[listener]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=120</guid>
		<description><![CDATA[Hoje me perguntei como manipular eventos sem ser inline e sem usar frameworks es a solução &#8216;listener&#8217;. Primeiro o que são eventos inline? Eventos inline são aqueles que colocamento diretamente no html Ex: Veja um exemplo com o evento onclick &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2010/01/06/manipulando-eventos-com-javascript/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/8Zea9nM9e7qOC6zXM8EcQ3_vrl0/0/da"><img src="http://feedads.g.doubleclick.net/~a/8Zea9nM9e7qOC6zXM8EcQ3_vrl0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/8Zea9nM9e7qOC6zXM8EcQ3_vrl0/1/da"><img src="http://feedads.g.doubleclick.net/~a/8Zea9nM9e7qOC6zXM8EcQ3_vrl0/1/di" border="0" ismap="true"></img></a></p><p>Hoje me perguntei como manipular eventos sem ser inline e sem usar frameworks es a solução &#8216;listener&#8217;.<br />
<strong>Primeiro o que são eventos inline?</strong> Eventos inline são aqueles que colocamento diretamente no html<br />
Ex: Veja um exemplo com o evento onclick</p>
<pre class="brush: xml; title: ; notranslate">
&lt;input type=&quot;button&quot; value=&quot;Click me&quot; id=&quot;botao&quot; onclick=&quot;alert('Hello');&quot;/&gt;
</pre>
<p>Como podes ver isso deixa nosso html um pouco mais &#8220;sujo&#8221;, para termos uma maior organização devemos separar o html do javascript.</p>
<p>Veja como fica nosso codigo usando listener:</p>
<pre class="brush: jscript; title: ; notranslate">
&lt;script type=&quot;text/javascript&quot;&gt;
	onload = function(){
              //Aqui pegamos o elemento a ser atribuido o evento.
              var botao = document.getElementById('botao');

              botao.addEventListener('click', ola(), false); // para outros navegadores

              botao.attachEvent('onclick', ola()); // para IE

              function ola(){
                     alert('Olá');
              }
	}
&lt;/script&gt;
&lt;input type=&quot;button&quot; value=&quot;Click me&quot; id=&quot;botao&quot;/&gt;
</pre>
<p>A principio parece que nosso código ficou mais confuso, mas na verdade só nos falta criar as funções principais para questões de legibilidade.</p>
<p><strong>Por que temos o onload antes dos eventos?</strong><br />
o onload serve para que nossos métodos só sejam executados após o carregamento dos elementos. pois não queremos adicionar um evento onclick em um elemento que ainda não foi criado.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2010%2F01%2F06%2Fmanipulando-eventos-com-javascript%2F&amp;title=Manipulando%20eventos%20com%20JavaScript" id="wpa2a_94"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/QuU9X_XRGb0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2010/01/06/manipulando-eventos-com-javascript/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2010/01/06/manipulando-eventos-com-javascript/</feedburner:origLink></item>
		<item>
		<title>Dicas – SQL</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/gamJB_bYjGk/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/10/27/dicas-sql/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 03:58:09 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[SQL]]></category>
		<category><![CDATA[dicas]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=115</guid>
		<description><![CDATA[Ao executar uma consulta, informe ao SQL o nome dos campos que você necessita ao invés do bom e velho &#8221; * &#8220;, mesmo você precisando de todos os campos da mesma, pois o SQL vai direto aos campos. Utilizando &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/10/27/dicas-sql/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/6R5_63n_2S7LDpt0yNTNohnEMeA/0/da"><img src="http://feedads.g.doubleclick.net/~a/6R5_63n_2S7LDpt0yNTNohnEMeA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/6R5_63n_2S7LDpt0yNTNohnEMeA/1/da"><img src="http://feedads.g.doubleclick.net/~a/6R5_63n_2S7LDpt0yNTNohnEMeA/1/di" border="0" ismap="true"></img></a></p><p>Ao executar uma consulta, informe ao SQL o nome dos campos que você necessita ao invés do bom e velho &#8221; * &#8220;, mesmo você precisando de todos os campos da mesma, pois o SQL vai direto aos campos. Utilizando o &#8221; * &#8220;, o SQL tem o trabalho de buscar as colunas em tabelas do sistema, para, depois, retornar o resultado de todas as colunas da tabela.</p>
<p>Existe também um truque na cláusula WHERE que faz bastante diferença. Devemos levar em consideração que nem sempre códigos curtos e uso de funções da linguagem ajudam a turbinar nossas consultas.</p>
<p><strong>Vamos ao exemplo:</strong></p>
<blockquote><p>SELECT nome FROM tbTeste<br />
WHERE LOWER(nome) = &#8216;jefferson&#8217;<br />
Esta consulta demora cerca de 2 vezes mais, que a seguir:<br />
SELECT nome FROM tbTeste<br />
WHERE nome = &#8216;JEFFERSON&#8217; OR nome = &#8216;jefferson&#8217;</p></blockquote>
<p>Em alguns casos, onde existem muitos relacionamentos, o operador OR poderia ser trocado por UNION, pois o &#8220;nosso amigo OR&#8221; consome muita CPU ao realizar o processo lógico. Outra ótima solução para a utilização de muitos OR em uma determinada consulta seria o uso do operador IN e NOT IN ou EXISTS e NOT EXISTIS. A diferença básica desses operadores seria que o IN você utiliza para verificar valores e o EXISTS, para querys correlatas.</p>
<p><strong>Exemplo de IN:</strong></p>
<blockquote><p>SELECT nome FROM tbTeste<br />
WHERE nome IN (&#8216;jefferson&#8217;, &#8216;JEFFERSON&#8217;)<br />
Exemplo de EXISTS:<br />
SELECT nome FROM tbTeste<br />
WHERE EXISTS<br />
(SELECT nome FROM tbTeste2 WHERE nome = &#8216;jefferson&#8217; OR nome = &#8216;JEFFERSON&#8217;)</p></blockquote>
<p style="text-align: right;">FONTE: IMASTERS</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F10%2F27%2Fdicas-sql%2F&amp;title=Dicas%20%E2%80%93%20SQL" id="wpa2a_96"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/gamJB_bYjGk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/10/27/dicas-sql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/10/27/dicas-sql/</feedburner:origLink></item>
		<item>
		<title>Javascript orientado a objetos – Post 2</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/FI3QTfE2AyA/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/10/12/javascript-orientado-a-objetos-post-1-2/#comments</comments>
		<pubDate>Mon, 12 Oct 2009 04:21:09 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[oo]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=108</guid>
		<description><![CDATA[Literais de objeto Os literais de objeto possibilitam criar e iniciar objetos de uma maneira diferente. A sintaxe é definida por uma lista de nomes e valores separados por vírgulas entre um par de chaves. Cada um é definido pelo &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/10/12/javascript-orientado-a-objetos-post-1-2/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/qVKW1EMpPMYhKhG4ydNrwne_BLw/0/da"><img src="http://feedads.g.doubleclick.net/~a/qVKW1EMpPMYhKhG4ydNrwne_BLw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/qVKW1EMpPMYhKhG4ydNrwne_BLw/1/da"><img src="http://feedads.g.doubleclick.net/~a/qVKW1EMpPMYhKhG4ydNrwne_BLw/1/di" border="0" ismap="true"></img></a></p><h3>Literais de objeto</h3>
<p>Os literais de objeto possibilitam criar e iniciar objetos de uma maneira diferente. A sintaxe é definida por uma lista de nomes e valores separados por vírgulas entre um par de chaves. Cada um é definido pelo nome da propriedade seguido de dois pontos e o valor correspondente.</p>
<pre class="brush: jscript; title: ; notranslate">

var Livro = {
      titulo : &quot;Os Três Mosqueteiros&quot;,
      autor : &quot;Alexandre Dumas&quot;,
      capitulo1 : {
             titulo : &quot;Os três presentes do sr. D'Artagnan pai&quot;,
             paginas : 11
      },
      capitulo2 : {
             titulo : &quot;A antecâmara do sr. Tréville&quot;,
             paginas : 8
      }
}

// Acessando as propriedades:
alert(Livro.titulo + &quot; - &quot; + Livro.autor + &quot;\\n\\t&quot; +
Livro.capitulo1.titulo + &quot; - &quot; +
Livro.capitulo1.paginas + &quot; páginas\\n\\t&quot; +
Livro.capitulo2.titulo + &quot; - &quot; +
Livro.capitulo2.paginas + &quot; páginas&quot;);
</pre>
<div id="section_6">
<h3>Composição</h3>
<p>A composição é um recurso utilizado para definir uma relação do tipo “tem um” (<em>“has a” relationship</em>), ou seja, um <span style="text-decoration: underline;">objeto que conta com outros objetos para formar sua estrutura</span>.<br />
Por exemplo, um objeto do tipo Carro teria em sua estrutura objetos do tipo Roda, Volante, Banco.<br />
O exemplo anterior que descreve um livro, também demonstra o uso deste recurso.</p>
</div>
<div id="section_6">
<pre class="brush: jscript; title: ; notranslate">
function Livro(titulo, autor) {
        this.titulo = titulo;
        this.autor = autor;
}

function Capitulo(titulo, paginas) {
        this.titulo = titulo;
        this.paginas = paginas;
}

var livro = new Livro(&quot;Os Três Mosqueteiros&quot;, &quot;Alexandre Dumas&quot;);
var capitulo1 = new Capitulo(&quot;Os três presentes do sr. D'Artagnan pai&quot;, 11);
var capitulo2 = new Capitulo(&quot;A antecâmara do sr. Tréville&quot;, 8);

// Os objetos do tipo Capitulo fazem parte da composição do objeto livro
livro.capitulo1 = capitulo1;
livro.capitulo2 = capitulo2;

// Acessando as propriedades:
alert(livro.titulo + &quot; - &quot; + livro.autor + &quot;\\n\\t&quot; +
livro.capitulo1.titulo + &quot; - &quot; +
livro.capitulo1.paginas + &quot; páginas\\n\\t&quot; +
livro.capitulo2.titulo + &quot; - &quot; +
livro.capitulo2.paginas + &quot; páginas&quot;);
</pre>
</div>
<div id="section_7">
<h3>Encapsulamento</h3>
<p>Como exposto no início do artigo, em nosso exemplo que representa um ventilador, detalhes da estrutura de alguns objetos ficam ocultos internamente, pois não precisamos conhecê-los para fazer uso dos mesmos.</p>
<p>O encapsulamento tem por objetivo esconder essa informação que não precisa ser de conhecimento do utilizador da classe. Seu uso é uma boa prática quanto à manutenção da classe, pois podemos modificar a parte que é oculta ao utilizador sem alterar sua forma de implementação.</p>
<p>Em Javascript podemos usar encapsulamento em propriedades de uma classe utilizando (ou não) a palavra-chave <span style="font-family: Courier New;">var</span> ao invés da palavra-chave <span style="font-family: Courier New;">this</span> e do operador “<span style="font-family: Courier New;">.</span>”.</p>
<pre class="brush: jscript; title: ; notranslate">
function Ventilador(velMax) {
        var maximaPermitida = 5; // Uso de encapsulamento
        var velocidadePadrao = 3; // Variáveis privadas
        // Avalia se a velocidade máxima fornecida é maior que zero e menor que 5, o limite atual.
        if (velMax &gt; 0 &amp;&amp; velMax &lt;= maximaPermitida) {
                // Caso seja, atribui o valor fornecido à propriedade velocidadeMaxima
                this.velocidadeMaxima = velMax;
        } else {
                // Caso contrário, atribui o valor da variável velocidadePadrao à propriedade velocidadeMaxima
                this.velocidadeMaxima = velocidadePadrao;
        }
        this.ligado = false;
        this.ligar = function() { // O método ligar agora é definido
                this.ligado = true; // por um literal de função, o que
        } // melhora a legibilidade do código.
}
ventilador = new Ventilador(0); // Cria a instância fornecendo o valor 0 para o argumento velMax;
alert(ventilador.velocidadeMaxima); // Retorna 3 – o padrão
alert(ventilador.maximaPermitida); // Retorna undefined
</pre>
<h3>Herança</h3>
<p>Em Javascript a herança ocorre por meio de objetos protótipos e define uma relação do tipo “é um” (<em>“is a” relationship</em>).<br />
Cada objeto herda propriedades e métodos de seu objeto protótipo que é referenciado pela propriedade <span style="font-family: Courier New;">prototype</span>.</p>
<p>A classe <span style="font-family: Courier New;">Object</span> é a superclasse de todas as classes definidas em Javascript, ou seja, todos os construtores criados herdam propriedades e métodos definidos no construtor <span style="font-family: Courier New;">Object()</span> como por exemplo o método <span style="font-family: Courier New;">toString()</span>, que assim como outros pode ser sobrescrito na subclasse.</p>
<p>Em alguns casos, é conveniente utilizar este recurso em classes personalizadas, para isso basta definir um construtor como valor para a propriedade <span style="font-family: Courier New;">prototype</span> da classe em questão.</p>
<p>Como exemplo simplório, vamos definir a classe <strong>Eletrodomestico</strong> com a propriedade <strong>ligado</strong> e os métodos <strong>ligar</strong> e <strong>desligar</strong> comuns a todos os eletrodomésticos e então definir a classe <strong>Ventilador</strong> com propriedades e métodos peculiares.</p>
<pre class="brush: jscript; title: ; notranslate">
function Eletrodomestico() {
       this.ligado = false;
       this.ligar = function() {
               this.ligado = true;
       }
       this.desligar = function() {
               this.ligado = false;
       }
}

function Ventilador(velMax) {
       var maximaPermitida = 5; // Uso de encapsulamento
       var velocidadePadrao = 3; // Variáveis privadas
       if (velMax &gt; 0 &amp;&amp; velMax &lt;= maximaPermitida) {
               this.velocidadeMaxima = velMax;
       } else {
               this.velocidadeMaxima = velocidadePadrao;
       }
}

Ventilador.prototype = new Eletrodomestico(); // Define o objeto protótipo
ventilador = new Ventilador(4);
alert(ventilador.ligado); // Retorna false
ventilador.ligar();
alert(ventilador.ligado); // Retorna true
</pre>
<p>A utilização do objeto protótipo faz com que a propriedade <span style="font-family: Courier New;">constructor</span> também seja herdada da superclasse, o que definiria a classe <strong>Eletrodomestico</strong> como valor da propriedade no objeto <strong>ventilador</strong>.<br />
Uma alternativa é definir de forma explícita a propriedade <span style="font-family: Courier New;">constructor</span>:</p>
<pre class="brush: jscript; title: ; notranslate">
Ventilador.prototype.constructor = Ventilador;
</pre>
</div>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F10%2F12%2Fjavascript-orientado-a-objetos-post-1-2%2F&amp;title=Javascript%20orientado%20a%20objetos%20%E2%80%93%20Post%202" id="wpa2a_98"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/FI3QTfE2AyA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/10/12/javascript-orientado-a-objetos-post-1-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/10/12/javascript-orientado-a-objetos-post-1-2/</feedburner:origLink></item>
		<item>
		<title>Javascript orientado a objetos – Post 1</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/izLcBdC6zqs/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/09/30/javascript-orientado-a-objetos-post-1/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 12:40:29 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[objetos]]></category>
		<category><![CDATA[oo]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=89</guid>
		<description><![CDATA[Como sou fascinado por javascript, proponho aqui uma serie de posts sobre js orientado a objetos, recomendo que para melhor entendimento dos posts a seguir é necessário algum conhecimento sobre programação orientada a objetos. Inicialmente temos como exemplo de objeto, &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/09/30/javascript-orientado-a-objetos-post-1/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/_FDg83yE7MC0Fql8pYaRjcCzvAA/0/da"><img src="http://feedads.g.doubleclick.net/~a/_FDg83yE7MC0Fql8pYaRjcCzvAA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/_FDg83yE7MC0Fql8pYaRjcCzvAA/1/da"><img src="http://feedads.g.doubleclick.net/~a/_FDg83yE7MC0Fql8pYaRjcCzvAA/1/di" border="0" ismap="true"></img></a></p><p>Como sou fascinado por javascript, proponho aqui uma serie de posts sobre js orientado a objetos,<br />
recomendo que para melhor entendimento dos posts a seguir é necessário algum conhecimento sobre programação orientada a objetos.</p>
<p>Inicialmente temos como exemplo de objeto, um ventilador. Ao olharmos para este objeto, podemos identificá-lo dentre outros eletrodomésticos pelas suas características. Um ventilador pode estar desligado ou ligado em algumas velocidades. Detalhes de sua estrutura ficam ocultos internamente, pois não precisamos conhecê-los para fazer uso do mesmo.</p>
<p><span style="color: #000080;"><strong>Função construtora e propriedades / Classe e atributos</strong></span><br />
Agora vamos criar a função construtora <strong>Ventilador</strong>, contendo as propriedades <strong>velocidadeMaxima</strong> e <strong>ligado</strong>. Observe que a propriedade <strong>velocidadeMaxima</strong> recebe o valor do argumento <strong>velMax</strong>.</p>
<pre class="brush: jscript; title: ; notranslate">
 function Ventilador(velMax) {
     this.velocidadeMaxima = velMax;
     this.ligado = false;
 }
 </pre>
<p>A palavra-chave this é responsável por iniciar o objeto adequadamente.</p>
<p><span style="color: #000080;"><strong>Instâncias</strong></span><br />
A criação de um objeto, ou seja, a instanciação de uma classe é realizada com uso do operador new. Após este operador vem o nome da função construtora, responsável pela inicialização do objeto.</p>
<p>Aqui criamos uma instancia do ventilador:</p>
<pre class="brush: jscript; title: ; notranslate">
 var ventilador1 = new Ventilador(3);
 </pre>
<p><span style="color: #000080;"><strong>Acessando propriedades</strong></span><br />
Para acessar as propriedades de um objeto você deve utilizar o operador “.” que deve ser precedido de uma referência ao objeto e sucedido pelo nome de uma de suas propriedades.</p>
<pre class="brush: jscript; title: ; notranslate">
 alert(ventilador1.velocidadeMaxima); // Retorna 3
 </pre>
<p>Diferente das linguagens clássicas orientadas a objeto, Javascript permite que propriedades sejam adicionadas a qualquer momento durante a execução do código. Por exemplo, vamos adicionar a propriedade <strong>cor</strong> a nosso ventilador</p>
<pre class="brush: jscript; title: ; notranslate">

ventilador1.cor = &amp;quot;branco&amp;quot;;
 alert(ventilador1.cor); // Retorna branco
 </pre>
<p><span id="more-89"></span></pre>
<p><span style="color: #000080;"><strong>Métodos</strong></span><br />
Métodos em Javascript são funções invocadas por objetos. Para criar um novo método, basta atribuir uma função a uma propriedade do objeto utilizando também o operador “.”. O exemplo abaixo demonstra como definir o método <strong>ligar</strong> para o objeto <strong>Ventilador</strong> utilizando a função <strong>liga</strong> através da propriedade prototype.</p>
<pre class="brush: jscript; title: ; notranslate">
 function liga() {
     this.ligado = true;
 }
 Ventilador.prototype.ligar = liga;
 </pre>
<p>Caso queira adicionar um método a um objeto em particular, pode fazê-lo da seguinte maneira:</p>
<pre class="brush: jscript; title: ; notranslate">
 ventilador2 = new Ventilador(2);
 ventilador2.turbo = function(){
     this.velocidadeMaxima = 10;
 };
 </pre>
<p>Outro uso possível:</p>
<pre class="brush: jscript; title: ; notranslate">

function funcaoliga() {
     this.ligado = true;
 }

 function Ventilador(velMax) {
     this.velocidadeMaxima = velMax;
     this.ligado = false;
     this.ligar = funcaoliga;
 }
 </pre>
<p>A palavra chave this é substituída pelo objeto que invoca a função, essa é uma das principais vantagens da utilização de métodos. Exemplo de uso:</p>
<pre class="brush: jscript; title: ; notranslate">
var ventilador = new Ventilador(3);
 alert(ventilador.ligado); // Retorna false
 ventilador.funcaoliga();
 alert(ventilador.ligado); // Retorna true
 </pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F09%2F30%2Fjavascript-orientado-a-objetos-post-1%2F&amp;title=Javascript%20orientado%20a%20objetos%20%E2%80%93%20Post%201" id="wpa2a_100"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/izLcBdC6zqs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/09/30/javascript-orientado-a-objetos-post-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/09/30/javascript-orientado-a-objetos-post-1/</feedburner:origLink></item>
		<item>
		<title>(Fast Tip) IE BUGs – Links</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/46fBcRFvTkk/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/09/23/fast-tip-ie-bugs-links/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 17:54:27 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Fast Tip]]></category>
		<category><![CDATA[IE Bugs]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[ie]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=87</guid>
		<description><![CDATA[Com certeza os bugs do ie merecem uma galeria de fast tips eis aqui o primeiro. A pouco tempo me deparei com um bug um tanto estranho pois não afetava a estética do layout, acho que não deve ser raro &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/09/23/fast-tip-ie-bugs-links/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Vm0am_ppqmf4dqf2hWDFGEB2tzw/0/da"><img src="http://feedads.g.doubleclick.net/~a/Vm0am_ppqmf4dqf2hWDFGEB2tzw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Vm0am_ppqmf4dqf2hWDFGEB2tzw/1/da"><img src="http://feedads.g.doubleclick.net/~a/Vm0am_ppqmf4dqf2hWDFGEB2tzw/1/di" border="0" ismap="true"></img></a></p><p>Com certeza os bugs do ie merecem uma galeria de fast tips eis aqui o primeiro.</p>
<p>A pouco tempo me deparei com um bug um tanto estranho pois não afetava a estética do layout, acho que não deve ser raro bugs assim pois o ie tem um repertorio de bugs muito vasto, voltando ao assunto esse bug acontece em todos os IEs exceto o IE8.</p>
<p><strong>Descrição do Bug:</strong> Navegador não interpreta o link que foi atribuído a um determinado elemento.</p>
<p>Isso só acontece acredito eu quando temos uma div com float e dentro desta temos imagens(ou elementos) com links.</p>
<p><strong>A possível solução:</strong> Finalmente o que interessa, no meu caso a solução foi bem simples é necessário somente atribuir posição relativa as tags &#8220;a&#8221; da div com o bug.</p>
<p>Exemplo:</p>
<pre class="brush: css; title: ; notranslate">
     	#divComBug a{position:relative;}
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F09%2F23%2Ffast-tip-ie-bugs-links%2F&amp;title=%28Fast%20Tip%29%20IE%20BUGs%20%E2%80%93%20Links" id="wpa2a_102"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/46fBcRFvTkk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/09/23/fast-tip-ie-bugs-links/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/09/23/fast-tip-ie-bugs-links/</feedburner:origLink></item>
		<item>
		<title>(Fast tip) PHP – Arredondamento de números</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/ItDgtfXWxvc/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/09/14/fast-tip-php-arredondamento-de-numeros/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 20:43:05 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Fast Tip]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[arredondamento]]></category>
		<category><![CDATA[números]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=82</guid>
		<description><![CDATA[Básicamete no php há três funções para arredondamento de números, elas são: round &#8211; Arredonda um número ceil &#8211; Arredonda um número para cima floor - Arredonda um número para baixo round ceil e floor]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/MyOHQOTDyTIEzMaRcZ2N_IxYNEo/0/da"><img src="http://feedads.g.doubleclick.net/~a/MyOHQOTDyTIEzMaRcZ2N_IxYNEo/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/MyOHQOTDyTIEzMaRcZ2N_IxYNEo/1/da"><img src="http://feedads.g.doubleclick.net/~a/MyOHQOTDyTIEzMaRcZ2N_IxYNEo/1/di" border="0" ismap="true"></img></a></p><p>Básicamete no php há três funções para arredondamento de números, elas são:</p>
<ol>
<li> <strong>round</strong> &#8211; Arredonda um número</li>
<li> <strong>ceil</strong> &#8211; Arredonda um número para cima</li>
<li> <strong>floor </strong>- Arredonda um número para baixo</li>
</ol>
<p><strong>round</strong></p>
<pre class="brush: php; title: ; notranslate">
/* round */
/*Modo básico */
echo round(3.4);         // 3
echo round(3.5);         // 4

/* Usando o segundo parâmetro
* este parametro define apartir de qual casa deve ser arredondado
*/
// Arredonda apartir da 3 casa decimal
echo round(3.7777777, 3);// 3.778
// Arredonda apartir da 1 casa decimal
echo round(3.4999999, 1);// 3.5
// Arredonda apartir da 2 casa decimal
echo round(1.95583, 2);  // 1.96

// Arredonda apartir do ultimo numero - 3
echo round(1241757, -3); // 1242000
//Exemplo acima é util para numeros muito grandes
echo round(1241757849486465, -3); // 1241757849490000
echo round(1241757849484465, -3); // 1241757849480000

echo round(5.045, 2);    // 5.05
echo round(5.055, 2);    // 5.06
</pre>
<p><strong>ceil e floor</strong></p>
<pre class="brush: php; title: ; notranslate">
/* ceil */
echo ceil(4.3);    // 5
echo ceil(9.999);  // 10
echo ceil(-3.14);  // -3
/* floor */
echo floor(4.3);   // 4
echo floor(9.999); // 9
echo floor(-3.14); // -4

//Todos estes exemplos pode ser visto no manual do php
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F09%2F14%2Ffast-tip-php-arredondamento-de-numeros%2F&amp;title=%28Fast%20tip%29%20PHP%20%E2%80%93%20Arredondamento%20de%20n%C3%BAmeros" id="wpa2a_104"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/ItDgtfXWxvc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/09/14/fast-tip-php-arredondamento-de-numeros/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/09/14/fast-tip-php-arredondamento-de-numeros/</feedburner:origLink></item>
		<item>
		<title>PHP – Variáveis estáticas</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/2TiuLEUKPZk/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/09/10/php-variaveis-estaticas/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 19:34:44 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[variáveis]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=79</guid>
		<description><![CDATA[Como no C o PHP suporta variáveis estáticas. A variável estática é inicializada na primeira chamada da função e é compartilhada durante todas as chamadas. Vejamos um exemplo: Resultado: Valor: 3 Talvez não tenha tanta utilidade no dia-dia mas vale &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/09/10/php-variaveis-estaticas/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/ijvdLrPD5HVaoLmTLGhfmVYFc6w/0/da"><img src="http://feedads.g.doubleclick.net/~a/ijvdLrPD5HVaoLmTLGhfmVYFc6w/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ijvdLrPD5HVaoLmTLGhfmVYFc6w/1/da"><img src="http://feedads.g.doubleclick.net/~a/ijvdLrPD5HVaoLmTLGhfmVYFc6w/1/di" border="0" ismap="true"></img></a></p><p>Como no C o PHP suporta variáveis estáticas.<br />
A variável estática é inicializada na primeira chamada da função e é compartilhada durante todas as chamadas.<br />
Vejamos um exemplo:</p>
<pre class="brush: php; title: ; notranslate">
function foo(){
	static $contador = 0;
	return $contador+=1;
}
foo();
foo();
$valor = foo();
echo 'Valor: '.$valor;
</pre>
<p><strong>Resultado:</strong> Valor: 3<br />
Talvez não tenha tanta utilidade no dia-dia mas vale deixar registrado.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F09%2F10%2Fphp-variaveis-estaticas%2F&amp;title=PHP%20%E2%80%93%20Vari%C3%A1veis%20est%C3%A1ticas" id="wpa2a_106"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/2TiuLEUKPZk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/09/10/php-variaveis-estaticas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/09/10/php-variaveis-estaticas/</feedburner:origLink></item>
		<item>
		<title>Javascript – Funções de Intervalos</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/VoVQ3kctrpI/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/09/10/javascript-funcoes-de-intervalos/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 17:55:30 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[intervalos]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=72</guid>
		<description><![CDATA[setTimeout setInterval No javascript temos duas funções que definem intervalos para a chamada de determinados scripts, o setTimeout e setInterval as duas recebem dois parâmetros, primeiro o script(geralmente uma chamada para função) em forma de string, segundo o intervalo em &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/09/10/javascript-funcoes-de-intervalos/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/roCnFv8d85dpzVEcEKBBGHmr21c/0/da"><img src="http://feedads.g.doubleclick.net/~a/roCnFv8d85dpzVEcEKBBGHmr21c/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/roCnFv8d85dpzVEcEKBBGHmr21c/1/da"><img src="http://feedads.g.doubleclick.net/~a/roCnFv8d85dpzVEcEKBBGHmr21c/1/di" border="0" ismap="true"></img></a></p><h2>setTimeout</h2>
<h2>setInterval</h2>
<p>No javascript temos duas funções que definem intervalos para a chamada de determinados scripts, o setTimeout e setInterval as duas recebem dois parâmetros, primeiro o script(geralmente uma chamada para função) em forma de string, segundo o intervalo em milissegundos.. vamos ao código:</p>
<pre class="brush: jscript; title: ; notranslate">
  /* setTimeout */
 var acao = alert('Olá Mundo!');
 setTimeout(acao, 2000); // 2000 = 2 segundos

 /* setInterval */
 function acao2(){
 alert('Hello World!');
 }
 setInterval(acao2(), 5000);
 </pre>
<p><strong>Diferença entra as funções</strong><br />
<strong>setTimeout:</strong> É chamando uma única vez.<br />
<strong>setInterval:</strong> É chamado continuamente conforme o intervalo.</p>
<p>Beleza já temos nosso script executando com um intervalo e no caso do setInterval executando continuamente, mas como cancelamos o intervalo? basta usarmos o função clearInterval está função recebe um parâmetro o qual é uma referencia de qual intervalo queremos cancelar, simplificando vamos ao código:</p>
<pre class="brush: jscript; title: ; notranslate">
  function teste(msg){
  		alert(msg);
  }
  var idInter = setInterval(teste('Jefferson'), 2000);
  //Aqui cancelamos o intervalo passando como referencia a variável idInter.
  clearInterval(idInter);
   </pre>
<p>Caso você tenha adicionado um intervalo usando o setTimeout e deseja que ele sejá cancelado use a função clearTimeout passando como parâmetro a referencia do intervalo.</p>
<pre class="brush: jscript; title: ; notranslate">
   function ola(){
  		alert('Olá');
  	}
  var meuIntervalo = setInterval(ola(), 10000);

  clearTimeout(meuIntervalo);
 </pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F09%2F10%2Fjavascript-funcoes-de-intervalos%2F&amp;title=Javascript%20%E2%80%93%20Fun%C3%A7%C3%B5es%20de%20Intervalos" id="wpa2a_108"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/VoVQ3kctrpI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/09/10/javascript-funcoes-de-intervalos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/09/10/javascript-funcoes-de-intervalos/</feedburner:origLink></item>
		<item>
		<title>Cronologia dos 40 anos da internet</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/0duVFsmnVuc/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/09/03/cronologia-dos-40-anos-da-internet/#comments</comments>
		<pubDate>Thu, 03 Sep 2009 13:54:40 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[internet]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=70</guid>
		<description><![CDATA[1969 Em 2 de setembro, dois computadores na UCLA (Universidade da Califórnia, Los Angeles) trocam dados sem sentido no primeiro teste da Arpanet, uma rede militar experimental. A primeira conexão entre dois locais &#8211;a UCLA e a Stanford Research Institute, &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/09/03/cronologia-dos-40-anos-da-internet/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Pay4M9SmjNCKJv8D8GQeFJ21948/0/da"><img src="http://feedads.g.doubleclick.net/~a/Pay4M9SmjNCKJv8D8GQeFJ21948/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Pay4M9SmjNCKJv8D8GQeFJ21948/1/da"><img src="http://feedads.g.doubleclick.net/~a/Pay4M9SmjNCKJv8D8GQeFJ21948/1/di" border="0" ismap="true"></img></a></p><table border="0">
<tbody>
<tr>
<th>1969</th>
</tr>
<tr>
<td>Em 2 de setembro, dois computadores na UCLA (Universidade da Califórnia, Los Angeles) trocam dados sem sentido no primeiro teste da Arpanet, uma rede militar experimental. A primeira conexão entre dois locais &#8211;a UCLA e a Stanford Research Institute, também na Califórnia&#8211; acontece em 29 de outubro, apesar de a rede ser interrompida após digitarem as duas primeiras letras da palavra &#8220;logon&#8221;. A Universidade da Califórnia Santa Bárbara e a Universidade de Utah também se juntam à rede depois.</td>
</tr>
<tr>
<th>1970</th>
</tr>
<tr>
<td>A Arpanet chega à sua primeira ligação na costa leste dos Estados Unidos, na empresa Bolt, Beranek e Newman &#8211;agora BBN Technologies&#8211;, em Cambridge, Massachusetts.</td>
</tr>
<tr>
<th>1972</th>
</tr>
<tr>
<td>Ray Tomlinson traz também o e-mail à rede, escolhendo o símbolo &#8220;at&#8221; ou &#8220;@&#8221; como maneira de especificar endereços de e-mail pertencendo a outros sistemas.</td>
</tr>
<tr>
<th>1973</th>
</tr>
<tr>
<td>A Arpanet ganha suas primeiras ligações internacionais, na Inglaterra e Noruega.</td>
</tr>
<tr>
<th>1974</th>
</tr>
<tr>
<td>Vint Cerf e Bob Kahn desenvolvem a técnica de comunicações TCP, permitindo que múltiplas redes se compreendam, criando a verdadeira internet. Posteriormente, o conceito se divide em TCP/IP antes de sua adoção formal, em 1º de janeiro de 1983.</td>
</tr>
<tr>
<th>1983</th>
</tr>
<tr>
<td>O DNS (Domain Name System) é proposto. A criação de sufixos como &#8220;.com&#8221;, &#8220;.gov&#8221; e &#8220;.edu&#8221; chega um ano depois.</td>
</tr>
<tr>
<th>1988</th>
</tr>
<tr>
<td>Um dos primeiros worms da internet, Morris, causa danos a milhares de computadores.</td>
</tr>
<tr>
<th>1989</th>
</tr>
<tr>
<td>A Quantum Computer Services, agora AOL, inaugura o serviço America Online para computadores Macintosh e Apple 2, começando uma expansão que acabaria por conectar cerca de 27 milhões de norte-americanos em 2002.</td>
</tr>
<tr>
<th>1990</th>
</tr>
<tr>
<td>Tim Berners-Lee cria a WWW (World Wide Web) enquanto desenvolvia maneiras de controlar computadores a distância na Cern (Organização Europeia para Pesquisa Nuclear).</td>
</tr>
<tr>
<th>1993</th>
</tr>
<tr>
<td>Marc Andreessen e colegas na Universidade de Illinois criam o Mosaic, primeiro navegador a combinar gráficos e texto em uma única página, abrindo a web para o mundo com um software fácil de usar.</td>
</tr>
<tr>
<th>1994</th>
</tr>
<tr>
<td>Andreessen e outros na equipe do Mosaic formam uma empresa para desenvolver o primeiro navegador comercial, o Netscape. Isso chama a atenção da Microsoft e de outros desenvolvedores que iriam investir no potencial comercial da web. Dois advogados da área de imigração apresentam o spam ao mundo, ao fazer propaganda de seus serviços de &#8220;green card lottery&#8221; &#8211;programa de distribuição de vistos norte-americanos.</td>
</tr>
<tr>
<th>1995</th>
</tr>
<tr>
<td>A Amazon.com abre suas portas virtuais.</td>
</tr>
<tr>
<th>1998</th>
</tr>
<tr>
<td>Google monta um projeto iniciado nos dormitórios de Stanford. O governo dos Estados Unidos delega a supervisão das políticas relacionadas a nomes de domínios para a Icann (Internet Corporation for Assigned Names and Numbers). O Departamento de Justiça e 20 Estados acusam a Microsoft, criadora do onipresente sistema operacional Windows de abusar de seu poder de mercado, frustrando a competição com o Netscape e outros.</td>
</tr>
<tr>
<th>1999</th>
</tr>
<tr>
<td>O Napster populariza o compartilhamento de arquivos de música, levando a sucessores que mudaram permanentemente a indústria das gravadoras. A população usuária de internet no mundo ultrapassa 250 milhões de pessoas.</td>
</tr>
<tr>
<th>2000</th>
</tr>
<tr>
<td>O &#8220;boom&#8221; das empresas de tecnologia dos anos 1990 dá lugar à explosão da bolha do setor. A Amazon.com, eBay e outros sites são seriamente prejudicados em um dos primeiros usos em larga escala do ataque de negação de serviço, que enche um site com tanto tráfico falso que usuários de verdade não conseguem visitá-lo.</td>
</tr>
<tr>
<th>2002</th>
</tr>
<tr>
<td>A população usuária de internet do mundo ultrapassa 500 milhões de pessoas.</td>
</tr>
<tr>
<th>2004</th>
</tr>
<tr>
<td>Marck Zuckerberg inicia o Facebook, em seu segundo ano de curso na Universidade Harvard.</td>
</tr>
<tr>
<th>2005</th>
</tr>
<tr>
<td>É inaugurado o site de compartilhamento de vídeos YouTube.</td>
</tr>
<tr>
<th>2006</th>
</tr>
<tr>
<td>A população usuária de internet do mundo ultrapassa 1 bilhão de pessoas.</td>
</tr>
<tr>
<th>2007</th>
</tr>
<tr>
<td>A Apple lança o iPhone, trazendo o acesso a internet sem fio a mais milhões de pessoas.</td>
</tr>
<tr>
<th>2008</th>
</tr>
<tr>
<td>Os usuários de internet do mundo ultrapassam 1,5 bilhões de pessoas. O total só na China chega a 250 milhões, ultrapassando os Estados Unidos como o país com a maior população usuária de internet do mundo. Os desenvolvedores do Netscape interrompem o navegador pioneiro, embora seu &#8220;sucessor&#8221;, Firefox, permaneça forte. Importantes companhias aéreas intensificam o uso de serviços de internet nos voos.</td>
</tr>
<tr>
<th>2009</th>
</tr>
<tr>
<td>O &#8220;Seattle Post-Intelligencer&#8221; torna-se o primeiro grande jornal diário a ficar exclusivamente online. O Google anuncia o desenvolvimento de um sistema operacional com foco na web.</td>
</tr>
</tbody>
</table>
<p style="text-align: right;">FONTE: Folha Online</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F09%2F03%2Fcronologia-dos-40-anos-da-internet%2F&amp;title=Cronologia%20dos%2040%20anos%20da%20internet" id="wpa2a_110"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/0duVFsmnVuc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/09/03/cronologia-dos-40-anos-da-internet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/09/03/cronologia-dos-40-anos-da-internet/</feedburner:origLink></item>
		<item>
		<title>Usando a biblioceta de APIs AJAX do google</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/FCLpp3mEuXc/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/09/02/usando-a-biblioceta-de-apis-ajax-do-google/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 17:54:38 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[frameworks]]></category>
		<category><![CDATA[google apis]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=66</guid>
		<description><![CDATA[Caso você queira adicionar recursos de um framework javascript em sua pagina, você pode fazer isso sem ter que baixa-lo e envialo ao seu servidor, basta utilizar este serviço do google que mantem disponivel apis que são amplamente utilizadas no &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/09/02/usando-a-biblioceta-de-apis-ajax-do-google/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/yOAYxmBcNDsTA875VMkMnv2uYXM/0/da"><img src="http://feedads.g.doubleclick.net/~a/yOAYxmBcNDsTA875VMkMnv2uYXM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/yOAYxmBcNDsTA875VMkMnv2uYXM/1/da"><img src="http://feedads.g.doubleclick.net/~a/yOAYxmBcNDsTA875VMkMnv2uYXM/1/di" border="0" ismap="true"></img></a></p><p>Caso você queira adicionar recursos de um framework javascript em sua pagina, você pode fazer isso sem ter que baixa-lo e envialo ao seu servidor, basta utilizar este serviço do google que mantem disponivel apis que são amplamente utilizadas no mercado,  já sobre as versões disponiveis você podera utilizar todas as versões estaveis do framework de sua esconha para conferir quais são estas versões basta acessar este <a title="Google apis ajax" href="http://code.google.com/intl/pt-BR/apis/ajaxlibs/documentation/#AjaxLibraries" target="_blank">link</a>.</p>
<p>Aqui segue um exemplo simple de utilização da biblioteca juntamento com o framework  jQuery 1.3.2</p>
<pre class="brush: jscript; title: ; notranslate">
&amp;lt;script src=&amp;quot;http://www.google.com/jsapi&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;
    google.load(&amp;quot;jquery&amp;quot;, &amp;quot;1.3.2&amp;quot;);
   //Com a funcão setOnLoadCallback você garante que o framework já esta pronto para ser chamado.
   google.setOnLoadCallback(function(){
     $(&amp;quot;p&amp;quot;).mouseover(function(){
        $(this).css(&amp;quot;color&amp;quot;, &amp;quot;red&amp;quot;);
     });
   });
 &amp;lt;/script&amp;gt;
</pre>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F09%2F02%2Fusando-a-biblioceta-de-apis-ajax-do-google%2F&amp;title=Usando%20a%20biblioceta%20de%20APIs%20AJAX%20do%20google" id="wpa2a_112"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/FCLpp3mEuXc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/09/02/usando-a-biblioceta-de-apis-ajax-do-google/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/09/02/usando-a-biblioceta-de-apis-ajax-do-google/</feedburner:origLink></item>
		<item>
		<title>PHP</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/RLFh0Dj5k9U/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/09/01/php/#comments</comments>
		<pubDate>Tue, 01 Sep 2009 12:21:59 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=55</guid>
		<description><![CDATA[A linguagem surgiu por volta de 1994, como um pacote de programas CGI criados por Rasmus Lerdof, com o nome Personal Home Page Tools, para substituir um conjunto de scripts Perl que ele usava no desenvolvimento de sua página pessoal. &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/09/01/php/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/g5zX56KFHrQxjw2o5E5FBCTCZMw/0/da"><img src="http://feedads.g.doubleclick.net/~a/g5zX56KFHrQxjw2o5E5FBCTCZMw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/g5zX56KFHrQxjw2o5E5FBCTCZMw/1/da"><img src="http://feedads.g.doubleclick.net/~a/g5zX56KFHrQxjw2o5E5FBCTCZMw/1/di" border="0" ismap="true"></img></a></p><p style="text-align: center;"><img class="size-full wp-image-56 aligncenter" title="php" src="http://www.jeffersonluis.com/blog/wp-content/uploads/2009/09/php.png" alt="Mascote PHP" width="329" height="211" /></p>
<p>A linguagem surgiu por volta de 1994, como um pacote de programas CGI criados por Rasmus Lerdof, com o nome Personal Home Page Tools, para substituir um conjunto de scripts Perl que ele usava no desenvolvimento de sua página pessoal. Em 1997 foi lançado o novo pacote da linguagem com o nome de PHP/FI, trazendo a ferramenta Forms Interpreter, um interpretador de comandos SQL.</p>
<p>Mais tarde, Zeev Suraski desenvolveu o analisador do PHP 3 que contava com o primeiro recurso de orientação a objetos, que dava poder de alcançar alguns pacotes, tinha herança e dava aos desenvolvedores somente a possibilidade de implementar propriedades e métodos.</p>
<p>Pouco depois, Zeev e Andi Gutmans, escreveram o PHP 4, abandonando por completo o PHP 3, dando mais poder à máquina da linguagem e maior número de recursos de orientação a objetos. O problema sério que apresentou o PHP 4 foi a criação de cópias de objetos, pois a linguagem ainda não trabalhava com apontadores ou handlers, como são as linguagens Java , Ruby e outras.</p>
<p>O problema fora resolvido na versão atual do PHP, a versão 5, que já trabalha com handlers. Caso se copie um objeto, na verdade copiaremos um apontador, pois, caso haja alguma mudança na versão original do objeto, todas as outras também sofrem a alteração, o que não acontecia na PHP 4.</p>
<p>Trata-se de uma linguagem extremamente modularizada, o que a torna ideal para instalação e uso em servidores web. Diversos módulos são criados no repositório de extensões PECL (PHP Extension Community Library) e alguns destes módulos são introduzidos como padrão em novas versões da linguagem. É muito parecida, em tipos de dados, sintaxe e mesmo funções, com a linguagem C e com a C++. Pode ser, dependendo da configuração do servidor, embarcada no código HTML. Existem versões do PHP disponíveis para os seguintes sistemas operacionais: Windows, Linux, FreeBSD, Mac OS, OS/2, AS/400, Novell Netware, RISC OS, AIX, IRIX e Solaris.</p>
<p>A Wikipédia funciona sobre um software inteiramente escrito em PHP, usando bases de dados MySQL: o MediaWiki.</p>
<p>Construir uma página dinâmica baseada em bases de dados é simples com PHP, (em parte, vale lembrar), este provê suporte a um grande número de bases de dados: Oracle, Sybase, PostgreSQL, InterBase, MySQL, SQLite, MSSQL, Firebird, etc., podendo abstrair o banco com a biblioteca ADOdb, entre outras.</p>
<p>PHP tem suporte aos protocolos: IMAP, SNMP, NNTP, POP3, HTTP, LDAP, XML-RPC, SOAP. É possível abrir sockets e interagir com outros protocolos. E as bibliotecas de terceiros expandem ainda mais estas funcionalidades.</p>
<p>Existem iniciativas para utilizar o PHP como linguagem de programação de sistemas fixos. A mais notável é a PHP-GTK. Trata-se de um conjunto do PHP com a biblioteca GTK, portada do C++, fazendo assim softwares inter-operacionais entre Windows e Linux. Na prática, essa extensão tem sido muito pouco utilizada para projetos reais.</p>
<p style="text-align: right;">Fonte: <a href="http://pt.wikipedia.org/">Wikipédia</a></p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F09%2F01%2Fphp%2F&amp;title=PHP" id="wpa2a_114"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/RLFh0Dj5k9U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/09/01/php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/09/01/php/</feedburner:origLink></item>
		<item>
		<title>Novo blog, novos desafios!</title>
		<link>http://feedproxy.google.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~3/ZUl55nospQ4/</link>
		<comments>http://www.jeffersonluis.com/blog/2009/08/29/novo-blog-novos-desafios/#comments</comments>
		<pubDate>Sat, 29 Aug 2009 17:40:59 +0000</pubDate>
		<dc:creator>Jefferson Luís</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.jeffersonluis.com/blog/?p=46</guid>
		<description><![CDATA[Seja bem vindo, aqui neste primeiro post gostaria que de fazer um breve introdução de minhas ideias e obvetivos com este blog A ideia inicial de eu ter criado este blog foi para guardar informações, exemplos e código útil para &#8230;<p class="read-more"><a href="http://www.jeffersonluis.com/blog/2009/08/29/novo-blog-novos-desafios/">Continue lendo &#187;</a></p>]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Yr20sqrszy_bIUUK8EYq42At1ig/0/da"><img src="http://feedads.g.doubleclick.net/~a/Yr20sqrszy_bIUUK8EYq42At1ig/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Yr20sqrszy_bIUUK8EYq42At1ig/1/da"><img src="http://feedads.g.doubleclick.net/~a/Yr20sqrszy_bIUUK8EYq42At1ig/1/di" border="0" ismap="true"></img></a></p><p><!-- Neste primeiro post irei esclarecer os objetivos deste blog.</p>
<p>Este blog tem o intuito de disponibilir soluções e dicas sobre assuntos relacionados ao desenvolvimento web. --></p>
<p>Seja bem vindo, aqui neste primeiro post gostaria que de fazer um breve introdução de minhas ideias e obvetivos com este blog</p>
<p>A ideia inicial de eu ter criado este blog foi para guardar informações, exemplos e código útil para min no futuro e então pensei em fazer isso de uma maneira mais interressante e produtiva que foi de publicalas aqui onde todos podem dar suas opiniões até mesmo dicas de como aperfeiçoar meus exemplos.</p>
<p>O objetivo deste blog é trazar conhecimento e ser uma refências para programadores e entusiastas da web.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.jeffersonluis.com%2Fblog%2F2009%2F08%2F29%2Fnovo-blog-novos-desafios%2F&amp;title=Novo%20blog%2C%20novos%20desafios%21" id="wpa2a_116"><img src="http://www.jeffersonluis.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><img src="http://feeds.feedburner.com/~r/JeffersonLus-ProgramadorPhpblumenauSc/~4/ZUl55nospQ4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.jeffersonluis.com/blog/2009/08/29/novo-blog-novos-desafios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.jeffersonluis.com/blog/2009/08/29/novo-blog-novos-desafios/</feedburner:origLink></item>
	</channel>
</rss>

