

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
     <title>Ruben-Alves.com | rss feeds | projectos</title>
     <link>http://www.ruben-alves.com/</link>
     <description>Ruben Alves.com v.2.1 | Projectos</description>
 	  <lastBuildDate>Sun, 5 Sep 2010 13:21:16 +0100</lastBuildDate>    
 	  <generator>Ruben.alves.com.v2 - handicapped project</generator> 
     <language>pt-PT</language>			
       <item>
          <title><![CDATA[php+GD+ttf]]></title>
          <description><![CDATA[O paradigma do designer e do programador é semelhante ao do arquitecto e do engenheiro civil. <span class="style1">Encontrar um consenso é por vezes uma tarefa impossível</span>. Mas como já estou farto de dizer: tudo é possível com a informática. <br /><br />Para exemplificar, disponibilizei uma parte de código que fiz recentemente que permite criar dinamicamente imagens com textos do tipo True Type Font (.ttf). Até agora, muita gente cria as imagens em primeiro num programa de desenho (ex. Photoshop) para depois inserir as imagens no site. Com esta técnica, o texto, as imagens, fontes, tamanhos e tudo o que compõe a imagem pode ser feito em tempo real através de uma base de dados.<br />Mas quero desde já acalmar os programadores, o designer será sempre preciso para criar as imagens de fundo :-P<br />

<iframe height="500" frameborder="0" width="100%" src="http://www.ruben-alves.com/projectos/php_gd_ttf.php">
  <p>Your browser does not support iframes.</p>
</iframe>
<br /><div style="text-align: center;">
<em>Para os leitores que seguem este site via RSS, o melhor é mesmo clicar <a title="http://www.ruben-alves.com/index.php?p=blog&id=438" target="_blank" href="http://www.ruben-alves.com/index.php?p=blog&id=438">aqui</a> | <a href="http://www.ruben-alves.com/projectos/php_gd_ttf.php" target="_blank" title="http://www.ruben-alves.com/projectos/php_gd_ttf.php">página do projecto</a>.</em></div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=26&amp;origem=rss</link>
          <dc:date>Sun, 1 Feb 2009 23:24:01 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[PHPMyCommunity]]></title>
          <description><![CDATA["<span class="style1">Um projecto fora das medidas possíveis para ser realizado só por uma pessoa</span>", foi assim que o meu coordenador do curso definiu o meu projecto ainda quando estava no 3º ano. Ninguém acreditava ao certo, se calhar nem eu esperava tanta carga de trabalho quando iniciei este projecto algures no meu 3º ano. Apesar de ser um projecto para ser entregue no fim do 4º ano, iniciei os trabalhos juntamente com a minha comunidade de amigos ao recolher o que já existia, ver quais eram as funcionalidades existentes. Pouco tempo depois, comecei a programar e desde daí nunca mais parei até a entrega do projecto. Para ser honesto, tinha fases de grande produtividade, e outras (exames, trabalhos etc..) na qual nem lhe pegava. <br />No fim do curso, o impensável tinha sido feito. Tinha conseguido a minha aposta, entreguei a plataforma, fiquei sem férias de verão, natal, fins de semana... <span class="style1">Mas entreguei não só a plataforma como o relatório</span>. <br /><br />A ideia principal desta plataforma era apoiar qualquer pessoa que pretendesse criar uma comunidade <span style="font-style: italic;">online</span>. Para isso dispunha de registo de utilizador, mensagens privadas, <span style="font-style: italic;">login</span>, sistema de notícias,<span style="font-style: italic;"> download</span>, hiperligações, contactos, <span style="font-style: italic;">shoutcast</span>, artigos, sondagens, forum entre outras coisas tudo programado por mim :P<br /><br />Desde da primeira versão da plataforma até à ultima, houve imensas coisas que foram melhorando, principalmente o forum e a segurança do site. Como tinha imenso trabalho para fazer, houve coisas que foram feitas ao início que teriam sido feitas de forma diferente se fossem feitas no fim. Ao longo de mais 3 anos depois da sua criação, a plataforma foi sempre evoluindo. Neste momento, tirei da Internet a última versão online, visto a comunidade em questão ganhar cada maior amplitude. A única forma de continuar com o projecto era uma reformulação de 60% da plataforma. Como o tempo é algo de muito valioso e escasso, preferi fazer evoluir o site para algo de mais comum.<br /><br />Passado cerca de 5 anos, ponho a disposição o <a title="http://www.ruben-alves.com/ficheiros/phpmycommunity.pdf" target="_blank" href="http://www.ruben-alves.com/ficheiros/phpmycommunity.pdf">relatório da monografia</a> para quem estiver interessado em entender melhor o seu funcionamento possa ler com calma as quase 100 páginas deste documento. Recordo que foi escrito em 2003, logo há muitas coisas que mudaram. Mas já na altura tinha algumas boas ideias, já se falava de XSS, segurança em aplicações web etc... <br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/phpMyCommunity.jpg" /><br /></div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=24&amp;origem=rss</link>
          <dc:date>Wed, 12 Mar 2008 20:01:27 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Polishop]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> Em parceria com a ptscooter, a <span class="style1">Polishop</span> entrou na Internet com um site institucional simpático. Não tem grandes pretensões, a não ser mostrar algumas das novidades, instalações e principalmente contactos. É um site para dar apoio técnico e comercial aos utilizadores do ptscooter caso o desejarem.<br /><br /><span style="font-weight: bold;">Domínio:</span> http://www.ptscooter.net/polishop<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> PHP<br /><br /><div style="text-align: center;"><span style="font-weight: bold;"><img src="http://www.ruben-alves.com/gfx/polishop.jpg" /></span><br /><span style="font-weight: bold;" /></div>

]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=23&amp;origem=rss</link>
          <dc:date>Wed, 12 Mar 2008 19:05:12 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Mcc]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> Foi o meu primeiro site para confluir como colaborador na Intersag. O design tinha sido feito, mas havia ninguém para pegar no HTML. Foi simplesmente montar o HTML e meter online.<br /><br /><span style="font-weight: bold;">Domínio:</span> www.mcclda.com<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> HTML<br /><br /><span style="font-weight: bold;">Hoje:</span> Hoje nem o domínio existe... <br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/mcc.jpg" /><br type="_moz" />

</div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=22&amp;origem=rss</link>
          <dc:date>Wed, 12 Mar 2008 18:48:37 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Litolousada]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> Empresa associada à Intersag (onde trabalhava), a <span class="style1">Litousada</span> foi uma página realizada numa tarde devido ao uso da super plataforma web que fazia sites totalmente configuráveis. Apesar de fazer parte dos sites <span style="font-style: italic;">light</span>, tinha alguma pinta e muito valor, pelo simples facto que demorou mais à propagação do DNS do que a criação completa do site :P<br /><br /><span style="font-weight: bold;">Domínio:</span> www.litolousada.com<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> PHP+MySQL, administração própria.<br /><br /><span style="font-weight: bold;">Hoje:</span> Tal com foi o caso com a Intersag, a página da Litolousada foi trabalhada pelas mãos da "estratega" software. Mais uma vez, resultou num site disfuncional, e&nbsp; claro, se quiserem ver a página de forma decente, terão que usar o o famoso navegador da Microsoft.<br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/litolousada.jpg" /><br type="_moz" />

</div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=21&amp;origem=rss</link>
          <dc:date>Wed, 12 Mar 2008 18:42:00 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Intersag]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> No finais de 2003, quando terminei a minha licenciatura em Novembro, lancei-me na aventura <span class="style1">Intersag</span>. Dois dos meus colegas de curso (Mário e Tiago) e eu próprio formávamos o core da empresa. O Mário no design e HTML, o Tiago nas aplicações 3D e multimédia e eu fazia toda a programação PHP, tratava de alguma parte da rede e do servidor.<br />Como era uma empresa nova, foi-nos pedido para criarmos a página da Intersag. Baseada inicialmente na minha plataforma PHPMyCommunity (criada em 2002), decidimos que era tinha demasiadas funcionalidades para um site institucional, logo a nossa escolha foi inserir o site da Intersag noutra plataforma mais <span style="font-style: italic;">light</span> também da minha autoria. <br />O site tinha administração própria, gestão das páginas, das cores, layout, imagens, produtos e serviços em tempo real.<br /><br /><span style="font-weight: bold;">Domínio:</span> www.intersag.com<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> PHP+MySQL, Flash, GD, administração própria.<br /><br /><span style="font-weight: bold;">Hoje:</span> Infelizmente para o site, a Intersag parece ter envergado para outra política no que diz respeito à criação de páginas web, relegando todo o serviço para outra empresa. Essa tal empresa, criou site muito estranho, pesado, disfuncional e pior ainda, não é compatível com os principais standards, tornando a visualização do site praticamente impossível com o Firefox.<br /><br />Como sempre, fica a imagem para a posteridade....<br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/intersag.jpg" /><br type="_moz" /></div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=20&amp;origem=rss</link>
          <dc:date>Wed, 12 Mar 2008 18:34:01 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Instituto das Artes e da Imagem]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> Decorria o ano de 2004 quando trabalhava no <span class="style1">Instituto das Artes e da Imagem</span>,&nbsp; e numa reunião falaram em renovar o antigo site (ainda estava alojado no rcts). Foi então que sugerir promover o IAI com website dinâmico, com várias funcionalidades e iniciar-se ao marketing <span style="font-style: italic;">online.</span><br />Criado à partir de uma plataforma feita por mim, desenvolvi vários <span style="font-style: italic;">layouts</span>, criei as imagens, tirei algumas fotografias etc... Apesar da plataforma estar funcional, este novo site precisou de vários dias de programação que alternava com as aulas aos alunos do 11º e 12º ano. <br />O site pretende ser a montra das actividades do Instituto, promovendo notícias, actividades permite igualmente realizar uma pré-candidatura<span style="font-style: italic;"> online</span>.<br />O site tem um menu dinâmico criado em tempo real à partir da base de dados, visita guiada das instalações e tem imensos parâmetros criados "<span style="font-style: italic;">on-the-fly</span>". <br /><br /><span style="font-weight: bold;">Domínio:</span> www.iai.pt<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> PHP+MySQL, Flash, GD com resize das imagens em tempo real, administração própria.<br /><br /><span style="font-weight: bold;">Hoje:</span> Depois da minha saída do Porto&nbsp; para Lisboa, o meu colega ficou responsável pela manutenção do site. Não ocorreram grandes mudanças tirando a inserção de novos cursos, novas actividades, mais e mais notícias :) (<span style="font-style: italic;">Parabéns Karminzo, eu disse-te que era fácil :P</span>)<br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/iai.jpg" /><br type="_moz" />
</div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=19&amp;origem=rss</link>
          <dc:date>Wed, 12 Mar 2008 18:17:06 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[GondoorSoccer]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> Criado em Março 2008, o projecto <span class="style1">GondoorSoccer</span> foi desenvolvido em regime de Freelance. Um site que pretende mostrar a actividade da empresa mostrando que o conceito do futebol <span style="font-style: italic;">indoor</span> pode não ser só futebol, como também o bem estar dos acompanhantes. <br /><br /><span style="font-weight: bold;">Domínio:</span> www.gondoorsoccer.pt<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> PHP, e-mail pela página web, CSS<br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/gondoorsoccer.jpg" /><br type="_moz" /> 
</div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=18&amp;origem=rss</link>
          <dc:date>Wed, 12 Mar 2008 18:04:02 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Florbela Machado]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> Criado em 2005, esta página nasceu através de contactos amigos, onde a líder do grupo pretendia marcar a sua presença na Internet. Devido ao pequeno orçamento, tentou-se fazer pelo mais simples mas mais eficaz possível.<br /><br /><span style="font-weight: bold;">Domínio:</span> www.florbela-machado.com<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> HTML, CSS, algum PHP + Flash + Formulários<br /><br /><span style="font-weight: bold;">Hoje:</span> Pelos vistos a página foi melhorada por outras pessoas. Desde que vim para Lisboa, nunca mais falei com esta senhora. No entanto, já lhe foi colocado uma tradução em inglês, inserção de alguns vídeos. No entanto o sistema de notícia não funciona.<br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/florbela_machado.jpg" /><br type="_moz" />

</div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=17&amp;origem=rss</link>
          <dc:date>Wed, 12 Mar 2008 17:55:15 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Factorplus]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> Criado em 2004, o projecto Factor Plus acabou por ser um projecto muito interessante, porque integrava uma série de tecnologias como por exemplo: gestão de utilizadores, e-mail de confirmação, com permissões para fazer o <span style="font-style: italic;">download</span> de determinados fichas técnicas em PDF. Englobava igualmente um pequeno sistema de busca. Apesar do design final ter ficado em tons azulados, ao meu ver o design inicial (a captura de ecrã) era bem mais <span style="font-style: italic;">sexy.</span> O Design foi obra do meu colega e amigo Mário Dominguez, toda a programação foi baseada na plataforma <span style="font-style: italic;">"sitelite"</span> que desenvolvi enquanto trabalhava na Intersag. <br /><br /><span style="font-weight: bold;">Domínio:</span> www.factorplus.pt<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> PHP+MySQL, gestão de utilizadores, criação de novos utilizadores, confirmação por e-mail, envio de e-mail pelo site, sistema de pesquisa, sistema de <span style="font-style: italic;">download</span> com permissões, sistema de produtos com categorias ilimitadas, com administração própria.<br /><br /><span style="font-weight: bold;">Hoje:</span> parece que ainda está versão "beta" pelo que dá a entender no URL do site. Sendo um site que acabei de fazer já quando tinha saído da <span style="font-style: italic;">Intersag,</span> acho que a animação em flash (que foi nitidamente transformada em gif) ficou mesmo mal. Apesar de ter ajudado em como meter o site <span style="font-style: italic;">online,</span> o meu substituto deve ter tido alguns problemas com PHP.<br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/factorplus.jpg" /><br type="_moz" />

</div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=16&amp;origem=rss</link>
          <dc:date>Mon, 3 Mar 2008 2:48:57 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Douroacima]]></title>
          <description><![CDATA[<span style="font-weight: bold;">História:</span> Criado em 2004, o projecto <span class="style1">Douroacima</span> era uma página à &#347;erio. Não só tinha várias linguas, como tinha uma galeria de imagem dinâmica, dava para enviar postais cibernéticos e tudo... <br />O Design foi obra do meu colega e amigo Mário Dominguez, toda a programação foi baseada na plataforma <span style="font-style: italic;">"sitelite"</span> que desenvolvi enquanto trabalhava na Intersag. <br /><br /><span style="font-weight: bold;">Domínio:</span> www.douroacima.pt<br /><br /><span style="font-weight: bold;">Tecnologias aplicadas:</span> PHP+MySQL, gestão de imagens em tempo real, e-mail pela página web, várias línguas <br /><br /><span style="font-weight: bold;">Hoje:</span> o meu site foi removido, deixando lugar à uma estranha animação em flash... <br /><br /><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/douroacima.jpg" /><br /></div><br /><br />

]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=15&amp;origem=rss</link>
          <dc:date>Mon, 3 Mar 2008 2:27:17 +0000</dc:date>    
       </item>			
       <item>
          <title><![CDATA[Criar Miniaturas em PHP+MySQL+GD]]></title>
          <description><![CDATA[Estou neste momento a melhorar a minha galeria de fotografias, reparei que com o aumento das fotos, o pobre servidor estava a ter sérios problemas em conseguir "entregar" a página decentemente. Por isso, em vez de criar miniaturas das fotografias em tempo real, decidi que ao inserir uma imagem, ele automaticamente irá criar uma copia da imagem e criar um novo ficheiro.<br />Mas antes disso, tinha que tratar das imagens que já existiam. Por isso, este <span style="font-style: italic;">script </span>faz esta primeira parte ás mil maravilhas. Basta ser executado para ir buscar todas imagens presentes em base de dados, abre cada uma delas e efectua a dita transformação.<br /><br /><div style="text-align: left;"><span style="font-weight: bold;">UpdateFotografias.php</span><br /></div><br /><span class="minitxt"><span style="background-color: rgb(255, 255, 255);">// Script para fazer resize a todas as imagens do servidor</span><br /><br />include ("./extras/dbConnection.php"); <br />$thumbWidth="120"; <span style="background-color: rgb(255, 255, 255);">//Define o tamanho final da imagem</span><br /><br /><span style="background-color: rgb(255, 255, 255);">// Recupera todas as imagens da galeria.</span><br />$sql="SELECT * FROM fotografias order by identificador";<br />$resultado= mysql_db_query ("$DB_nome", $sql);<br />while($registo=mysql_fetch_array ($resultado)){<br />&nbsp;&nbsp;&nbsp; $id=$registo['</span><span class="minitxt">identificador</span><span class="minitxt">']; <span style="background-color: rgb(255, 255, 255);">//Isto vai ser preciso no fim para actualizar a tabela</span><br />&nbsp;&nbsp;&nbsp; $gfx=$registo['fotografia']; <span style="background-color: rgb(255, 255, 255);">//Caminho da imagem no servidor</span><br /><br />&nbsp;&nbsp;&nbsp; $path=pathinfo($gfx); <span style="background-color: rgb(255, 255, 255);">//pathinfo Variáveis possíveis: dirname/basename/filename</span><br /><br />&nbsp;&nbsp;&nbsp; $img = imagecreatefromjpeg( "$gfx" );<br />&nbsp;&nbsp;&nbsp; $width = imagesx( $img );<br />&nbsp;&nbsp;&nbsp; $height = imagesy( $img );<br />&nbsp;&nbsp;  <br />&nbsp;&nbsp;&nbsp; $tmp_img = imagecreatetruecolor( 300,200 );<br />&nbsp;&nbsp;&nbsp; $tmp_img2 = imagecreatetruecolor( 120, 120);<br />&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp; <span style="background-color: rgb(255, 255, 255);">// Calcular o novo tamanho da imagem + escrita na pasta /tmp</span><br />&nbsp;&nbsp;&nbsp; $new_width = 220;<br />&nbsp;&nbsp;&nbsp; $new_height = floor( $height * ( $new_width / $width ) );&nbsp;&nbsp;&nbsp; <br /><br />&nbsp;&nbsp;&nbsp; <span style="background-color: rgb(255, 255, 255);">// Fazer o Resize/Crop necessário</span><br />&nbsp;&nbsp;&nbsp; imagecopyresampled( $tmp_img, $img, 0,0,60,0, $new_width, $new_height, $width, $height );<br />&nbsp;&nbsp;&nbsp; imagecopy&nbsp; ( $tmp_img2 , $tmp_img,0,0,0,25,&nbsp;&nbsp; 125,&nbsp;&nbsp; 125);<br /><br />&nbsp;&nbsp;&nbsp; $caminho_final="{$path['dirname']}"."/thumb/"."{$path['basename']}";<br />&nbsp;&nbsp;&nbsp; echo ("$caminho_final"); <span style="background-color: rgb(255, 255, 255);">// Só para fazer debugging<br /></span><br />&nbsp;&nbsp;<span style="background-color: rgb(255, 255, 255);">&nbsp; // Criar a imagem final, e grava-la em disco numa pasta chamada "thumb" definida anteriormente. </span><br />&nbsp;&nbsp;&nbsp; imagejpeg( $tmp_img2,"$caminho_final",80);<br />&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp; <span style="background-color: rgb(255, 255, 255);">//update SQL</span><br />&nbsp;&nbsp;&nbsp; $sql_update="UPDATE </span><span class="minitxt">fotografias </span><span class="minitxt">SET </span><span class="minitxt">fotografia</span><span class="minitxt">_thumb = '$caminho_final' WHERE </span><span class="minitxt">identificador</span><span class="minitxt"> =$id";<br />&nbsp;&nbsp;&nbsp; $resultado_update= mysql_db_query ("$DB_nome", $sql_update);<br />&nbsp;&nbsp;&nbsp; echo("$sql_update"); <span style="background-color: rgb(255, 255, 255);">//Ver o pedido SQL, para ver se tudo bate certo.</span><br />}<br /><br />?></span><br />]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=13&amp;origem=rss</link>
          <dc:date></dc:date>    
       </item>			
       <item>
          <title><![CDATA[mrtg+php+website]]></title>
          <description><![CDATA[Mais do que uma ferramenta do dia a dia para um Administrador de Sistemas, o <a title="http://oss.oetiker.ch/mrtg/" target="_blank" href="http://oss.oetiker.ch/mrtg/">MRTG,</a> permite realizar gráficos de tudo. E quando digo tudo, não é só dados relativos ao processador, temperaturas, actividade MySQL ou servidor de e-mail. Neste caso, utilizei o PHP&nbsp; para&nbsp; buscar dados relacionados com o número de utilizadores de uma página web. No fundo, conjugado com o MRTG, os dados recuperados pelo PHP permitem realizar gráficos da actividade de uma página web :P<br /><br />Vou saltar os passos da instalação do MRTG (existem milhares de sítios web com essa informação, tanto para Linux como para Windows), a sua configuração também é irrelevante, visto existirem outros tantos milhares :P<br /><br />Vamos passar directamente a parte que interessa, o ficheiro <span class="style1">PHP</span> que será responsável não só por ir buscar os dados online, como também produzir um resultado para ser lido pelo <span class="style1">MRTG</span>.<br /><br />Podem colocar o ficheiro numa pasta no servidor web, no meu caso, está em <span style="font-weight: bold;">/usr/local/bin</span>, e chama-se <span style="font-weight: bold;">websiteUsers.php</span> :<br /><br /><span class="minitxt">#!/usr/bin/php<br />$url = "http://www.nomedosite.pt/index.php"; <span style="background-color: rgb(255, 255, 255);"># Colocar o nome do site </span><br />$input = @file_get_contents($url) or die('Could not access file: $url');<br />$regexp = "#<b>(.*?)</b>#"; <span style="background-color: rgb(255, 255, 255);"># Atenção a Regex, neste caso o site que queria combinava com ela, agora tem de a personalizar</span><br /><br />if(preg_match_all("$regexp", $input, $matches)) {<br />&nbsp;&nbsp;&nbsp; $utilizadores=$matches[1][7]; <span style="background-color: rgb(255, 255, 255);"># Verificar se esta variável no Array combina com aquilo que querem.</span><br />&nbsp;&nbsp;&nbsp; $utilizadores=str_replace(' ', '', $utilizadores);<br />&nbsp;&nbsp;&nbsp; echo ("$utilizadores\n");<br />&nbsp;&nbsp;&nbsp; echo ("0\n"); <br />&nbsp;&nbsp;&nbsp; <span style="background-color: rgb(255, 255, 255);">// date ex:2 days,&nbsp; 1:39</span><br />&nbsp;&nbsp;&nbsp; $data = shell_exec('uptime');<br />&nbsp;&nbsp;&nbsp; $uptime = explode(' up ', $data);<br />&nbsp;&nbsp;&nbsp; $uptime = explode(',', $uptime[1]);<br />&nbsp;&nbsp;&nbsp; echo ("".$uptime[0].",".$uptime[1]."\n");<br />&nbsp;&nbsp;&nbsp;<span style="background-color: rgb(255, 255, 255);"> // hostname ex: aioros.solarsystem.lan</span><br />&nbsp;&nbsp;&nbsp; $host = shell_exec('hostname');<br />&nbsp;&nbsp;&nbsp; echo("$host");<br />}<br />?><br /></span><br />Uma vez este passo concluído, vamos alterar o ficheiro de configuração do <span class="style1">MRTG</span> (<span style="font-weight: bold;">/etc/mrtg.cfg</span>):<br /><br /><span class="minitxt">#<br /># Numero de utilizadores<br />#<br /><br />Target[site]: `/usr/local/bin/websiteUsers.php`<br />MaxBytes[site]:1000000<br />Options[site]: gauge, growright<br />Title[site]: Utilizadores site<br />PageTop[site]: Utilizadores site<br />WithPeak[site]: dwmy<br />YLegend[site]: No. de utilizadores<br />ShortLegend[site]: utilizadores<br />LegendI[site]: &nbsp;Utilizadores Online:<br />LegendO[site]: &nbsp;<br /></span><br /><br /><br />Concluído este passo, basta recriar o <span style="font-weight: bold;">index.html </span>do <span class="style1">MRTG</span> com o comando (ubuntu):<br /><span class="minitxt">sudo indexmaker --output=/var/www/mrtg/index.html /etc/mrtg.cfg</span><br /><br />Espero que este pequeno <span style="font-style: italic;">script</span> tenha sido útil, para qualquer dúvida, sempre podem entrar em contacto comigo.<br /><br />Após ter deixado correr o <span style="font-style: italic;">script </span>alguns dias, posso desde já mostrar o tipo de gráficos produzidos:<br /><br /><div style="text-align: center;"><span style="font-weight: bold;">Gráfico diário<br /></span><span style="font-style: italic;"> (com duas quebras... o meu portátil foi abaixo sexta e terça)</span><br /></div><div style="text-align: center;"><img src="http://www.ruben-alves.com/gfx/website-week.png" /><br /><br /><span style="font-weight: bold;">Gráfico mensal</span><br /><img src="http://www.ruben-alves.com/gfx/website-month.png" /><br /><br /><div style="text-align: center;" class="Estilo"><span style="font-weight: bold;">Aviso desde já que isto é monitorização de um <span style="font-style: italic;">website </span>com algumas visitas, do qual não sou dono :P<br type="_moz" /></span></div></div>]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=12&amp;origem=rss</link>
          <dc:date></dc:date>    
       </item>			
       <item>
          <title><![CDATA[Image Resizer]]></title>
          <description><![CDATA[Apesar dos diferentes ambientes GUI que permitem redimensionar imagens, quando estamos perante uma grande quantidade de imagens, só existe mesmo uma forma para automatizar todo o processo. Foi por isso que andei um pouco a procura de um sistema em Linux que me permitisse passar todas as fotos da passagem de ano num tamanho aceitável, de forma em poder envia-las pela Internet. <br />Deve existir outras formas, mas esta agradou-me particularmente: <span class="style1">Linux + Shell Script + ImageMagick</span><br /><br />Para isso, primeiro deve-se instalar o ImageMagic (ubuntu way):<br /><br /><span class="linux">ruben@aioros:~/scripts$ sudo apt-get install imagemagick</span><br /><br />Depois, criar um ficheiro texto desta forma:<br /><br /><span class="linux">ruben@aioros:~/scripts$ nano resize.sh </span><br /><br /><span class="linuxOrange"><br />--------------------------------------------------<br /># !/bin/bash<br /><br />for x in $(ls);do <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; convert -geometry 900x600 $x mini-$x<br />done<br /></span><span class="linuxOrange">--------------------------------------------------</span><br /><br />Dar privilégios de execução:<br />
<br />
<span class="linux">ruben@aioros:~/scripts$ chmod +x resize.sh </span><br />
<span class="linuxOrange"><br />
</span><br />É um simples <span style="font-style: italic;">script</span> que faz um <span style="font-style: italic;">loop</span> da leitura da directoria onde estão, e que executa o comando "<span style="font-style: italic;">convert -geometry</span>" ( Convert faz parte do pacote de aplicações do <span style="font-style: italic;">ImageMagick</span>.) com os parâmetros: 900x600 (resolução) $x (nome do ficheiro actual) mini-$x (nome do ficheiro que desejamos).<br /><br />O ImageMagick tem imensas outras funcionalidades a nível de tratamento de imagens on-the-fly (via php por exemplo) ou por shell script. Mais infos em: <a href="http://www.imagemagick.org/script/index.php" target="_blank" title="http://www.imagemagick.org/script/index.php">http://www.imagemagick.org/script/index.php</a><br type="_moz" />
]]></description>
          <link>http://www.ruben-alves.com/index.php?p=conteudo&amp;id=11&amp;origem=rss</link>
          <dc:date>Fri, 11 Jan 08 10:05:00 +0100</dc:date>    
       </item>		
   </channel>
</rss>