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

<channel>
	<title>BCSouza</title>
	<atom:link href="http://www.bcsouza.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bcsouza.com</link>
	<description>PHP, CodeIgniter, HTML, CSS, JQuery, JSON, SQL, etc.</description>
	<lastBuildDate>Mon, 20 Feb 2012 19:59:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Usando mais de um layout no Zend Framework</title>
		<link>http://www.bcsouza.com/usando-mais-de-um-layout-no-zend-framework/</link>
		<comments>http://www.bcsouza.com/usando-mais-de-um-layout-no-zend-framework/#comments</comments>
		<pubDate>Sun, 19 Feb 2012 15:55:48 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[layout]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[setlayout]]></category>
		<category><![CDATA[zend framework]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=214</guid>
		<description><![CDATA[Depois de já se ter um layout definodo no Zend Framework e for necessário em algum outro Controller ou View um layout diferente basta usar o setLayout. Aqui está sendo definido para todas views do Controller, mas pode-se utilizar diretamente dentro das actions do controlador. No parâmetro passado dentro de setLayout coloca-se o nome do<a href="http://www.bcsouza.com/usando-mais-de-um-layout-no-zend-framework/">&#160;&#160;[ Ler Mais ]</a>]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p><a href="http://www.bcsouza.com/wp-content/uploads/2011/11/ZendFramework-Logo.png"><img class="aligncenter  wp-image-188" title="Zend Framework" src="http://www.bcsouza.com/wp-content/uploads/2011/11/ZendFramework-Logo-300x79.png" alt="Zend Framework" width="378" height="99" /></a>Depois de já se ter um layout definodo no Zend Framework e for necessário em algum outro Controller ou View um layout diferente basta usar o <em>setLayout</em>.</p>
<pre class="brush: plain; title: ; notranslate">
public function init()
{
    $this-&gt;_helper-&gt;layout-&gt;setLayout('NomeDoLayout');
}
</pre>
<p>Aqui está sendo definido para todas views do Controller, mas pode-se utilizar diretamente dentro das actions do controlador. No parâmetro passado dentro de <em>setLayout</em> coloca-se o nome do arquivo do layout, sem a extensão e a primeira letra em maiúsculo, que está na pasta de layouts.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/usando-mais-de-um-layout-no-zend-framework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Paginação utilizando o Zend Framework</title>
		<link>http://www.bcsouza.com/paginacao-utilizando-o-zend-framework/</link>
		<comments>http://www.bcsouza.com/paginacao-utilizando-o-zend-framework/#comments</comments>
		<pubDate>Wed, 23 Nov 2011 00:19:45 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[paginação]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[zend]]></category>
		<category><![CDATA[zend_paginator]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=199</guid>
		<description><![CDATA[Aprimorando o exemplo do CRUD utilizando o Zend Framework, iremos colocar uma paginação utilizando Zend_Paginator naquele exemplo, quem fez esta paginação foi meu amigo e colega @carlo_brayer. Iremos alterar nosso indexAction(), para o código abaixo, onde iremos configurar as opções da nossa paginação como a quantidade de registros por página e número de páginas exibidas.<a href="http://www.bcsouza.com/paginacao-utilizando-o-zend-framework/">&#160;&#160;[ Ler Mais ]</a>]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p><img class="aligncenter size-full wp-image-188" title="Zend Framework" src="http://www.bcsouza.com/wp-content/uploads/2011/11/ZendFramework-Logo.png" alt="Zend Framework" width="501" height="133" /><br />
Aprimorando o exemplo do <a href="http://www.bcsouza.com/crud-utilizando-o-zend-framework/">CRUD utilizando o Zend Framework</a>, iremos colocar uma paginação utilizando <strong>Zend_Paginator</strong> naquele exemplo, quem fez esta paginação foi meu amigo e colega <a href="http://www.twitter.com/#!/carlo_brayer" target="_blank" rel="nofollow">@carlo_brayer</a>.<br />
Iremos alterar nosso indexAction(), para o código abaixo, onde iremos configurar as opções da nossa paginação como a quantidade de registros por página e número de páginas exibidas.</p>
<pre class="brush: php; title: IndexController.php; notranslate">
public function indexAction()
{
    // Página que a paginação irá iniciar
    $pagina = intval($this-&gt;_getParam('pagina', 1));

    $albums = new Application_Model_DbTable_Albums();
    $dados = $albums-&gt;fetchAll();

    $paginator = Zend_Paginator::factory($dados);
    // Seta a quantidade de registros por página
    $paginator-&gt;setItemCountPerPage(5);
    // numero de paginas que serão exibidas
    $paginator-&gt;setPageRange(7);
    // Seta a página atual
    $paginator-&gt;setCurrentPageNumber($pagina);
    // Passa o paginator para a view
    $this-&gt;view-&gt;albums = $paginator;
}
</pre>
<p>Criaremos o layout da nossa paginação, onde teremos os links para primeira página, página anterior, número das páginas, próxima página e última página. Esse arquivo será colocado dentro da pasta &#8220;views/scripts/&#8221;. Você pode fazer esse layout conforme sua necessitade, o bom é que podemos reaproveitá-lo nas outras paginações que poderão ser feitas.</p>
<pre class="brush: php; title: pagination.phtml; notranslate">&lt;/pre&gt;
&lt;div class=&quot;pagination&quot;&gt;
    &lt;!-- Link para a primeira página --&gt;
    &lt;?php if (isset($this-&gt;previous)): ?&gt;
        &lt;a title=&quot;Primeira Página&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $this-&gt;first)); ?&gt;&quot;&gt;&amp;laquo; Primeira&lt;/a&gt;|
    &lt;?php else: ?&gt;
        &lt;a class=&quot;current&quot; title=&quot;Primeira Página&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $this-&gt;first)); ?&gt;&quot;&gt;&amp;laquo; Primeira&lt;/a&gt;|
    &lt;?php endif; ?&gt;

    &lt;!-- Link para a página anterior --&gt;
    &lt;?php if (isset($this-&gt;previous)): ?&gt;
        &lt;a title=&quot;Página Anterior&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $this-&gt;previous)); ?&gt;&quot;&gt;&amp;laquo; Anterior&lt;/a&gt;|
    &lt;?php else: ?&gt;
        &lt;a  class=&quot;current&quot; title=&quot;Página Anterior&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $this-&gt;previous)); ?&gt;&quot;&gt;&amp;laquo; Anterior&lt;/a&gt;|
    &lt;?php endif; ?&gt;

    &lt;!-- Links numerados --&gt;
    &lt;?php foreach ($this-&gt;pagesInRange as $page): ?&gt;
        &lt;?php if ($page != $this-&gt;current): ?&gt;
            &lt;a title=&quot;&lt;?php echo $page; ?&gt;&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $page)); ?&gt;&quot;&gt;&lt;?php echo $page; ?&gt;&lt;/a&gt;|
        &lt;?php else: ?&gt;
            &lt;a class=&quot;current&quot; title=&quot;&lt;?php echo $page; ?&gt;&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $page)); ?&gt;&quot;&gt;&lt;?php echo $page; ?&gt;&lt;/a&gt;|
        &lt;?php endif; ?&gt;
    &lt;?php endforeach; ?&gt;

    &lt;!-- Link para a próxima página --&gt;
    &lt;?php if (isset($this-&gt;next)): ?&gt;
        &lt;a title=&quot;Próxima Página&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $this-&gt;next)); ?&gt;&quot;&gt;Próxima &amp;raquo;&lt;/a&gt;|
    &lt;?php else: ?&gt;
        &lt;a class=&quot;current&quot; title=&quot;Próxima Página&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $this-&gt;next)); ?&gt;&quot;&gt;Próxima &amp;raquo;&lt;/a&gt;|
    &lt;?php endif; ?&gt;

    &lt;!-- última página --&gt;
    &lt;?php if (isset($this-&gt;next)): ?&gt;
        &lt;a title=&quot;Última Página&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $this-&gt;last)); ?&gt;&quot;&gt;Última &amp;raquo;&lt;/a&gt;
    &lt;?php else: ?&gt;
        &lt;a class=&quot;current&quot; title=&quot;Última Página&quot; href=&quot;&lt;?php echo $this-&gt;url(array('pagina' =&gt; $this-&gt;last)); ?&gt;&quot;&gt;Última &amp;raquo;&lt;/a&gt;
    &lt;?php endif; ?&gt;
&lt;/div&gt;
</pre>
<p>Agora em nossa tela da view iremos chamar esta paginação, colocando este código onde você desejar mostrá-la.</p>
<pre class="brush: php; title: index.phtml; notranslate">
...
&lt;?php echo $this-&gt;paginationControl($this-&gt;albums, 'Sliding', 'pagination.phtml'); ?&gt;
</pre>
<p>Feito isso, estaremos com nossa <strong>Zend_Paginator</strong> funcionando.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/paginacao-utilizando-o-zend-framework/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>CRUD utilizando o Zend Framework</title>
		<link>http://www.bcsouza.com/crud-utilizando-o-zend-framework/</link>
		<comments>http://www.bcsouza.com/crud-utilizando-o-zend-framework/#comments</comments>
		<pubDate>Sat, 19 Nov 2011 20:49:44 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[crud]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[zend]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=187</guid>
		<description><![CDATA[O Zend Framework é um framework escrito em PHP para desenvolvimento WEB e é orientado a objetos. É o atualmente framework mais robusto que se tem para desenvolver em PHP, bom para desenvolvimento de aplicações grandes. Este CRUD (Create, Read, Update e Delete) desenvolvi através desde tutorial que mostra passo a passo de como iniciar<a href="http://www.bcsouza.com/crud-utilizando-o-zend-framework/">&#160;&#160;[ Ler Mais ]</a>]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p><img class="aligncenter size-full wp-image-188" title="Zend Framework" src="http://www.bcsouza.com/wp-content/uploads/2011/11/ZendFramework-Logo.png" alt="Zend Framework" width="501" height="133" /></p>
<p>O <strong>Zend Framework</strong> é um framework escrito em PHP para desenvolvimento WEB e é orientado a objetos. É o atualmente framework mais robusto que se tem para desenvolver em PHP, bom para desenvolvimento de aplicações grandes.<br />
Este CRUD (Create, Read, Update e Delete) desenvolvi através <a href="http://www.bcsouza.com/anexos/Iniciando_com_o_Zend_Framework.pdf" target="_blank">desde tutorial</a> que mostra passo a passo de como iniciar com o <strong>Zend Framework</strong>, utilizei a versão atual do <strong>Zend Framework</strong> (1.11.11) e funcionou bem.</p>
<p>Baixe o Zend Framework <a href="http://framework.zend.com/releases/ZendFramework-1.11.11/ZendFramework-1.11.11-minimal.zip" rel="nofollow">aqui</a> e colcoque a pasta &#8220;Zend&#8221; dentro da pasta library no projeto do CRUD.</p>
<p>Para baixar o projeto do CRUD clique <a href="http://www.bcsouza.com/anexos/crud_zend_framework.rar">aqui</a>.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/crud-utilizando-o-zend-framework/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Listar categorias no WordPress</title>
		<link>http://www.bcsouza.com/listar-categorias-no-wordpress/</link>
		<comments>http://www.bcsouza.com/listar-categorias-no-wordpress/#comments</comments>
		<pubDate>Wed, 16 Nov 2011 21:53:23 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[categorias]]></category>
		<category><![CDATA[lista categorias]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=175</guid>
		<description><![CDATA[Caso você queira fazer uma listagem manual das categorias de seu site feito em WordPress basta usar o seguinte código em php: Este código irá gerar uma lista com todas categorias, basta depois você colocar os estilos que desejar e personalizá-la.]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p><img class="size-medium wp-image-180 aligncenter" title="wordpress-logo" src="http://www.bcsouza.com/wp-content/uploads/2011/11/wordpress-logo-300x186.png" alt="Logo WordPress" width="300" height="&quot;186/" /></p>
<p>Caso você queira fazer uma listagem manual das categorias de seu site feito em WordPress basta usar o seguinte código em php:</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
$cats = explode(&quot;&lt;br /&gt;&quot;,wp_list_categories('title_li=&amp;echo=0&amp;depth=1&amp;style=none'));
$cat_n = count($cats) - 1;
echo &quot;&lt;ul&gt;&quot;;
for ($i=0;$i&lt; $cat_n;$i++)
{
    echo &quot;&lt;li&gt;$cats[$i]&lt;/li&gt;&quot;;
}
echo &quot;&lt;/ul&gt;&quot;;
?&gt;
</pre>
<p>Este código irá gerar uma lista com todas categorias, basta depois você colocar os estilos que desejar e personalizá-la.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/listar-categorias-no-wordpress/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Retornar idade no MySQL através da data de nascimento</title>
		<link>http://www.bcsouza.com/retornar-idade-no-mysql-atraves-da-data-de-nascimento/</link>
		<comments>http://www.bcsouza.com/retornar-idade-no-mysql-atraves-da-data-de-nascimento/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 01:20:39 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[CURDATE]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[YEAR]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=172</guid>
		<description><![CDATA[Com essas funções conseguimos retornar em nossa SQL a idade do usuário, sem ter que precisar tratar a data na parte de servidor, o que provavelmente acabe se ganhando alguns ms. No exemplo a seguir temos apenas o retorno da idade, onde o dt_nascimento é a data de nascimento do usuário em seu banco de<a href="http://www.bcsouza.com/retornar-idade-no-mysql-atraves-da-data-de-nascimento/">&#160;&#160;[ Ler Mais ]</a>]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Com essas funções conseguimos retornar em nossa SQL a idade do usuário, sem ter que precisar tratar a data na parte de servidor, o que provavelmente acabe se ganhando alguns ms. No exemplo a seguir temos apenas o retorno da idade, onde o <em>dt_nascimento</em> é a data de nascimento do usuário em seu banco de dados.</p>
<pre class="brush: sql; title: ; notranslate">
SELECT (YEAR(CURDATE())-YEAR(nascimento)) - (RIGHT(CURDATE(),5)&lt;RIGHT(dt_nascimento,5)) as idade
FROM usuarios
</pre>
<p>Também com esta mesma função podemos fazer um filtro para retornar apenas os usuários com idade maior que <em>x</em>( onde <em>x</em> é a idade que você desejar), como veremos neste exemplo a seguir.</p>
<pre class="brush: sql; title: ; notranslate">
SELECT *
FROM usuarios
WHERE (YEAR(CURDATE())-YEAR(nascimento)) - (RIGHT(CURDATE(),5)&lt;RIGHT(nascimento,5)) &gt; &lt;em&gt;x&lt;/em&gt;
</pre>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/retornar-idade-no-mysql-atraves-da-data-de-nascimento/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Acessibilidade web: Custo ou benefício</title>
		<link>http://www.bcsouza.com/acessibilidade-web-custo-ou-beneficio/</link>
		<comments>http://www.bcsouza.com/acessibilidade-web-custo-ou-beneficio/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 23:45:18 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[Acessibilidade]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=150</guid>
		<description><![CDATA[Um vídeo bem legal que me passaram falando sobre acessibilidade, com depoimentos de pessoas que possuem dificuldade para acessar diversos tipos de sites como de bancos, e-commerce, noticias, etc. Traz também algumas dicas para resolver alguns problemas enfrentados por essas pessoas que precisam de um site acessivel para conseguir navegar.]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Um vídeo bem legal que me passaram falando sobre acessibilidade, com depoimentos de pessoas que possuem dificuldade para acessar diversos tipos de sites como de bancos, e-commerce, noticias, etc. Traz também algumas dicas para resolver alguns problemas enfrentados por essas pessoas que precisam de um site acessivel para conseguir navegar.</p>
<p><iframe src="http://www.youtube.com/embed/hFI4CuxQjSA" frameborder="0" width="565" height="360"></iframe></p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/acessibilidade-web-custo-ou-beneficio/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Formatando datas usando DATE_FORMAT do MySQL</title>
		<link>http://www.bcsouza.com/formatando-datas-usando-date_format-do-mysql/</link>
		<comments>http://www.bcsouza.com/formatando-datas-usando-date_format-do-mysql/#comments</comments>
		<pubDate>Thu, 27 Oct 2011 23:22:57 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[date_format]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=141</guid>
		<description><![CDATA[Esta função do MySQL é muito boa para retornar em sua query as datas já formatadas. A seguir alguns exemplos de SQL utilizando esta função. No exemplo a seguir irá retornar somente a data. Retorno: 27/10/2011 Já neste exemplo terá alem da data as hora e os minutos. Retorno: 27/10/2011 21h17min]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Esta função do MySQL é muito boa para retornar em sua query as datas já formatadas. A seguir alguns exemplos de SQL utilizando esta função.</p>
<p>No exemplo a seguir irá retornar somente a data.<br />
Retorno: 27/10/2011</p>
<pre class="brush: sql; title: ; notranslate">
SELECT id, titulo, DATE_FORMAT(data, &quot;%d/%m/%Y&quot;) as data
FROM noticias
ORDER BY data DESC
</pre>
<p>Já neste exemplo terá alem da data as hora e os minutos.<br />
Retorno: 27/10/2011 21h17min</p>
<pre class="brush: sql; title: ; notranslate">
SELECT id, titulo, DATE_FORMAT(data, &quot;%d/%m/%Y %Hh%imin&quot;) as data
FROM noticias
ORDER BY data DESC
</pre>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/formatando-datas-usando-date_format-do-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Alguns .htaccess úteis</title>
		<link>http://www.bcsouza.com/alguns-htaccess-uteis/</link>
		<comments>http://www.bcsouza.com/alguns-htaccess-uteis/#comments</comments>
		<pubDate>Wed, 26 Oct 2011 23:45:49 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[htaccess]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[servidor]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=130</guid>
		<description><![CDATA[O .htaccess é um arquivo que controla o servidor web Apache, permitindo que se faça muitas coisas, a seguir vou colocar alguns exemplos úteis para todos desenvolvedores. Forçar / Remover www na URL Redirecionar todos os feeds do WordPress para o Feedburner Páginas de erros customizadas É só criar as páginas customizadas e colocar no<a href="http://www.bcsouza.com/alguns-htaccess-uteis/">&#160;&#160;[ Ler Mais ]</a>]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>O .htaccess é um arquivo que controla o servidor web Apache, permitindo que se faça muitas coisas, a seguir vou colocar alguns exemplos úteis para todos desenvolvedores.</p>
<h3>Forçar / Remover www na URL</h3>
<pre class="brush: plain; title: Removendo www; notranslate">
RewriteEngine On
RewriteCond %{HTTP_HOST} !^your-site.com$ [NC]
RewriteRule ^(.*)$ http://your-site.com/$1 [L,R=301]
</pre>
<pre class="brush: plain; title: Forçar www; notranslate">
RewriteEngine On
RewriteCond %{HTTP_HOST} ^your-site.com [NC]
RewriteRule ^(.*)$ http://www.your-site.com/$1 [L,R=301]
</pre>
<h3>Redirecionar todos os feeds do WordPress para o Feedburner</h3>
<pre class="brush: plain; title: ; notranslate">

  RedirectMatch 301 /feed/(atom|rdf|rss|rss2)/?$ http://feedburner.com/yourfeed/
  RedirectMatch 301 /comments/feed/(atom|rdf|rss|rss2)/?$ http://feedburner.com/yourfeed/
</pre>
<h3>Páginas de erros customizadas</h3>
<p>É só criar as páginas customizadas e colocar no servidor e mudar o arquivo .htaccess.</p>
<pre class="brush: plain; title: ; notranslate">
ErrorDocument 400 /errors/badrequest.html
ErrorDocument 401 /errors/authreqd.html
ErrorDocument 403 /errors/forbid.html
ErrorDocument 404 /errors/notfound.html
ErrorDocument 500 /errors/serverr.html
</pre>
<h3>Forçar download de arquivos específicos</h3>
<p>Ao oferecer download de alguns arquivos como mp3, eps ou xls para download em seu site, você pode forçar baixar em vez de deixar o browser decidir o que fazer.</p>
<pre class="brush: plain; title: ; notranslate">

  ForceType application/octet-stream
  Header set Content-Disposition attachment

  ForceType application/octet-stream
  Header set Content-Disposition attachment
</pre>
<h3>Log de erros PHP</h3>
<p>Basta criar um arquivo em algum lugar php_error.log em seu servidor, e adicionar o trecho ao seu arquivo htaccess. Não se esqueça de modificar o local do arquivo de log na linha 7.</p>
<pre class="brush: plain; title: ; notranslate">
# display no errs to user
php_flag display_startup_errors off
php_flag display_errors off
php_flag html_errors off
# log to file
php_flag log_errors on
php_value error_log /location/to/php_error.log
</pre>
<h3>Remover extensões de arquivos nas urls</h3>
<p>Este trecho irá remover a extensão .html em qualquer arquivo html. Este código pode ser facilmente adaptado para remover extensões de outras extensões de arquivo como php.</p>
<pre class="brush: plain; title: ; notranslate">
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html
</pre>
<h3>Impedir listagem de diretórios</h3>
<p>Se você não quer que qualquer um possa ver os arquivos que estão em seu servidor, basta adicionar o seguinte código ao seu arquivo htaccess.</p>
<pre class="brush: plain; title: ; notranslate">
Options -Indexes
</pre>
<h3>Adicionar automaticamente charset utf-8 aos arquivos</h3>
<p>Se você não quer que qualquer um possa ver os arquivos que estão em seu servidor, basta adicionar o seguinte código ao seu arquivo htaccess.</p>
<pre class="brush: plain; title: ; notranslate">
&lt;FilesMatch &quot;\.(htm|html|css|js)$&quot;&gt;
AddDefaultCharset UTF-8
&lt;/FilesMatch&gt;
</pre>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/alguns-htaccess-uteis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tradução de erros Codeigniter 2.0.2</title>
		<link>http://www.bcsouza.com/traducao-de-erros-codeigniter-2-0-2/</link>
		<comments>http://www.bcsouza.com/traducao-de-erros-codeigniter-2-0-2/#comments</comments>
		<pubDate>Fri, 21 Oct 2011 01:13:58 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[Codeigniter]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[ci]]></category>
		<category><![CDATA[codeigniter]]></category>
		<category><![CDATA[erros]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[tradução]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=121</guid>
		<description><![CDATA[Para traduzir as mensagens de erro do Codeigniter você deve fazer o download do arquivo, descompactálo e colocar na pasta &#8216;system/language&#8217;. No arquivo config.php você deve trocar &#8216;english&#8217; por &#8216;pt-br&#8217; (ou o nome da pasta caso você altere), ficará assim: Caso não goste de alguma tradução, edite os arquivos para se adaptar a sua necessidade.]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Para traduzir as mensagens de erro do Codeigniter você deve fazer o <a href="http://www.bcsouza.com/anexos/pt-br.rar"> download do arquivo</a>, descompactálo e colocar na pasta <em>&#8216;system/language&#8217;</em>.</p>
<p>No arquivo config.php você deve trocar &#8216;english&#8217; por &#8216;pt-br&#8217; (ou o nome da pasta caso você altere), ficará assim:</p>
<pre class="brush: php; title: ; notranslate">
$config['language'] = 'pt-br';
</pre>
<p>Caso não goste de alguma tradução, edite os arquivos para se adaptar a sua necessidade.</p>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/traducao-de-erros-codeigniter-2-0-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Calendário em Javascript usando jQuery</title>
		<link>http://www.bcsouza.com/calendario-em-javascript-usando-jquery/</link>
		<comments>http://www.bcsouza.com/calendario-em-javascript-usando-jquery/#comments</comments>
		<pubDate>Mon, 01 Aug 2011 01:40:42 +0000</pubDate>
		<dc:creator>BCSouza</dc:creator>
				<category><![CDATA[jQuery]]></category>
		<category><![CDATA[calendário]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.bcsouza.com/?p=111</guid>
		<description><![CDATA[Este é um ótimo calendário para ser usado quando se for trabalhar com datas em inputs, ele é feito em português e fácil de ser usado. Este calendário foi desenvolvido por Danilo Augusto e pode ser visto todos os exemplos do script no tidbits. Para fazer download do código abaixo clique aqui.]]></description>
			<content:encoded><![CDATA[<div id=HOTWordsTxt name=HOTWordsTxt><p>Este é um ótimo calendário para ser usado quando se for trabalhar com datas em inputs, ele é feito em português e fácil de ser usado. Este calendário foi desenvolvido por Danilo Augusto e pode ser visto todos os exemplos do script no <a href="http://www.tidbits.com.br/click-calendario-plugin-de-jquery-para-calendarios-em-portugues" target="_blank">tidbits</a>. Para fazer download do código abaixo clique <a href="http://www.bcsouza.com/anexos/calendario-javascript.rar">aqui</a>.</p>
<pre class="brush: xml; title: ; notranslate">
&lt;html&gt;
&lt;head&gt;
    &lt;title&gt;Calendário Javascript usando jQuery&lt;/title&gt;

    &lt;script src=&quot;js/jquery.min.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
    &lt;script src=&quot;js/jquery.click-calendario-1.0.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
    &lt;link rel=&quot;stylesheet&quot; href=&quot;css/jquery.click-calendario-1.0.css&quot;/&gt;

    &lt;script type=&quot;text/javascript&quot;&gt;
    $(document).ready(function(){
        $('#data').focus(function(){
        	$(this).calendario({
        		target:'#data'
        	});
        });
    });
    &lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;label for=&quot;data&quot;&gt;Data&lt;/label&gt;&lt;br /&gt;
    &lt;input type=&quot;text&quot; name=&quot;data&quot; id=&quot;data&quot; class=&quot;data&quot; maxlength=&quot;10&quot; readonly=&quot;readonly&quot;/&gt;&lt;br /&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
</div>]]></content:encoded>
			<wfw:commentRss>http://www.bcsouza.com/calendario-em-javascript-usando-jquery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

