Rafael Clares


Ativar controle activex automaticamente
Junho 27, 2008, 1:39 am
Arquivado em: Javascript | Tags: , , ,

Olá Pessoal, mais um script rápido e útil!

Imagine que você precise colocar em uma página, uma ou mais animações (banner, header, logo…) em flash e não quer que o usuário precise ativa-la tendo que clicar na área da animação que passa a conter o texto “Clique aqui para ativar e usar este controle”… isso mesmo o cara tem que clicar no local onde está a animação para que ele possa ativa-la, mais diretamente… o usuário tem que permitir que a animação inicie no browser dele!

Bem, parece até uma medida de segurança, legal a iniciativa, mas de toda forma isso é muito desagradável e para resolver ao menos esse problema fiz um script em JavaScript que inicia automáticamente a animação sem precisar que o pobre usuário (que muitas vezes nem sabe o que é aquilo) precise sair clicando o site todo para saber o que tem nele.

Segue o arquivo index.html que conterá a animação:

<html>
<head>
<title>autoFlash</title>
<script src=”autoflash.js” type=”text/javascript”></script>
</head>
<body>
<div id=”DivFlash”></div>
</body>
</html>

A linha <div id=”DivFlash”></div>  irá receber a animação assim que a página for carregada, para isso usaremo no JavaScript o método  window.onload que permite informar quais eventos ou funções serão iniciadas após o carregamento total da página.

Vamos ao JavaScript – salve-o como autoflash.js

function flashAct(idElem,nomeSWF,largSWF,altSWF) {
movie = ‘<object classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000′
movie += ‘ codebase=http://download.macromedia.com/pub/shockwave/cabs/’
movie += ‘flash/swflash.cab#version=5,0,2,0 width=”‘+largSWF+’”‘
movie += ‘ height=”‘+altSWF+’”>’
movie += ‘ <param name=”movie” value=”‘+nomeSWF+’.swf”>’
movie += ‘ <param name=quality value=”high”>’
movie += ‘ <param name=BGCOLOR value=#333333>’
movie += ‘ <param name=SCALE value=exactfit>’
movie += ‘ <embed src=”‘+nomeSWF+’.swf”‘
movie += ‘ quality=high’
movie += ‘ pluginspage=http://www.macromedia.com/shockwave/download/’
movie += ‘index.cgi?P1_Prod_Version=ShockwaveFlash type=application/x-shockwave-flash’
movie += ‘ width=”‘+largSWF+’”‘
movie += ‘ height=”‘+altSWF+’”‘
movie += ‘ bgcolor=#333333′
movie += ‘ scale= exactfit>’
movie += ‘ </embed>’
movie += ‘ </object>’
movie += ‘ </object>’
document.getElementById(idElem).innerHTML = movie;
}

window.onload = function(){
flashAct(‘DivFlash’,'future’,'590′,’140‘)
}

Como pode perceber a função flashAct recebe 4 paramentros sendo eles  id da div, nome do arquivo flash sem a extensão, largura e altura, até muito simples de entender.

Agora preste atenção no seguinte, percebe que a variavel movie está concatenada e recebe toda a tag embed necessária para inserir uma animação flash no  HTML, observe bem o código… existe um espaço no inicio das concatenações, isso ocorre pq deve haver espaço entre as tags inferiores de embed para que a animação seja inserida corretamente e funcione, agora você me diz:  Pq que não colocou no final da concatenção e eu lhe digo: Pq senão poucos iriam perceber o espaço. Há no entanto 2 linhas que não possuem o espaço no inicio da concatenação e isso é proposital, ou seja, nesse local realmente não pode ter espaço, trata-se de uma única linha que dividi em 2 por estética (boa visualização do código).

As linhas sem espaço são:

movie += ‘ codebase=http://download.macromedia.com/pub/shockwave/cabs/’
movie += ‘flash/swflash.cab#version=5,0,2,0 width=”‘+largSWF+’”‘

A segunda linha acima deve realmente conter o espaço.

movie += ‘ pluginspage=http://www.macromedia.com/shockwave/download/’
movie += ‘index.cgi?P1_Prod_Version=ShockwaveFlash type=application/x-shockwave-flash’

A segunda linha acima deve realmente conter o espaço.

Bem, acho que isso ficou claro não é! Mas ainda falta explicar a linha abaixo:

document.getElementById(idElem).innerHTML = movie;

Essa linha contém a instrução que irá inserir dentro da tag div passada no parametro da função o embed ou a variável movie que contém as informações da animação.

No window.onload é feita chamada à função  flashAct(‘DivFlash’,'future’,'590′,’140‘) onde DivFlash é o ID da minha div que receberá o flash, future é o nome do arquivo swf (sem extensão), 590 é a largura que deverá conter a animação e 140 é a altura da animação.

Veja o exemplo funcionando e sem a frase “ativar o controle…”    =/

Download dos arquivos flash.

abraços,

Rafael Clares



Conhecendo a origem do acesso!
Junho 26, 2008, 7:08 pm
Arquivado em: PHP | Tags: , , ,

Opa! beleza ai?

Já faz algum tempo desde a última vez que escrevi algo, embora o tempo esteja cada vez mais curto, confesso que agora que chegou o período de férias na faculdade estou bem animado para trocar idéias com vocês.

Então, como estou só de passagem por enquanto ai vai um script rápido e útil!

Estamos  sempre qurendo saber quantas visitas houveram em nosso site, isso realmente nos motiva a continuar à procura de melhorias seja no conteúdo, interface ou no modo geral, acontece que de alguma forma a simples idéia de saber que o site recebeu “N” visitas já parece nos contentar e nossa mente já começa a procurar novas idéias e rumos, deixando de lado um fator muito importante que é …. “De onde diabos veio esse acesso?” será que alguém buscou no google e me encontrou ?

Será que minha irmazinha colocou meu site como página inicial do browser dela ?

Será que algum site importante está linkando o meu blog/site ? como saberei ?

Essa semana encontrei um de meus humildes post’s em um blog [http://www.gilix.com.br/rafael_cambui/wordpress_2.0/?p=33]  onde o cara  não teve coragem de colocar a referência e acabou servindo de exemplo. Se você visitar o blog agora e ver o post, perceberá que ao final do post (última linha) tem o link (Exemplo Loader do Google) para a demonstração do script em funcionamento, porém ao clicar no link você vai ver  uma mensagem antes de vizualizar o script rodando. Isso ocorre porque no início do script está sendo verificado a origem da visita! Faça o teste acessando o link através do blog dele e depois do post original (que é esse aqui) e perceberá a utilidade de se identificar a origem do acesso.

Vamos ver como saber de onde o visitante do seu site está vindo.

Coloque no arquivo index do seu site as seguintes linhas :

<?php
//Iniciando uma sessao PHP
@session_start();

//Recuperando a origem do visitante (URL)
$orig = getenv(“HTTP_REFERER“);

//Recuperando o IP do visitante
$ip = getenv(“REMOTE_ADDR“);

//Recuperando informacoes do browser
$nav = getenv(“HTTP_USER_AGENT“);

//Guardando os dados em uma var da sessao
$_SESSION['vistante'] = “Vindo de: $orig | IP: $ip | Browser: $nav“;
?>

Acima perceba que é iniciada uma sessão, a @session_start(); deve estar contida em todas as páginas do site, isso possibilita que em qualquer momento você possa consultar o contéudo da variável $_SESSION['vistante'] que não precisa necessáriamente ter as informações da forma como exibi no script, você pode reunir as informações que julgar necessárias.

Dessa forma quero dizer que, todas as suas páginas PHP deverão conter o seguinte cabeçalho:

<?php
@session_start();
// echo $_SESSION['vistante']; //descomente essa linha para ver as informacoes
?>

Para testar o funcionamento do script localmente você pode criar um outro arquivo que contenha um link para o index.php. Não esqueça que  para ver as informações é necessário descomentar a linha abaixo:

echo $_SESSION['vistante'];

Para ver funcionando clique aqui.

PS: É importante lembrar que existem ferramentas destinadas à este propósito, quem tem um plano de hospedagem que possui cpanel/Helm sabe do que estou falando, existem lá ferramentas de estatísticas excelentes.

Até a próxima… estarei voltando em breve :)



SQL Server e .NET
Junho 25, 2008, 6:47 pm
Arquivado em: SQL & .NET | Tags:

Galera, como perceberam aqui no blog não tem nada sobre SQL e .NET, isso ocorre por um simples motivo…

Eu não sei nadaaaaaaaaa ! Mas acontece que depois de procurar bastante sobre o conteúdo na web me deparei com uma comunidade muito boa e agora estou publicando aqui a indicação que é muito válida!

A equipe  CODIFICANDO.NET tem feito um ótimo trabalho ao que se refere à SQL Server e .NET, com a  experiência que possuem e o material de qualidade que a equipe disponibiliza, só nos resta aproveitar!!!

http://www.codificando.net/ (Artigos, Tutoriais, Fórum, RSS…)

http://www.codificandomagazine.net (Revista  Codificando Magazine)

http://www.codificandomagazine.net/podcast (PodCast)

Espero que seja tão útil para vocês como está sendo para mim!

abraços