Archive for setembro, 2008

Instalando servidor Apache com MySQL e as linguagens ColdFusion e PHP

Instalando servidor Apache com MySQL e as linguagens ColdFusion e PHP.

Escrito por Marcio Nakano (marcionakano.com.br)
Data: 29/09/2008
Disponível em http://www.marcionakano.com.br/blog/post/instalando-apache-mysql-coldfusion-php.pdf

Os programas necessários são: XAMPP e CF.
Estou utilizando nesse tutorial as versões:

  • XAMPP 1.6.7 (xampp-win32-1.6.7-installer.exe), veja aqui.
  • CF 8 (coldfusion-801-win.exe), veja aqui.

Conteúdo

Instalando XAMPP
Instalação do ColdFusion.


Instalando XAMPP

O XAMPP é um programa de instalação fácil de servidores web, de banco de dados e FTP. Isso foi feito para facilitar a instalação, evitando que aconteçam conflitos.
Iniciando a instalação

Vamos iniciar a instalação clicando no executável e em Next.

Primeiros passos
Escolha o caminho (pode ficar dentro do "arquivos de programas" se você preferir).
Definindo o caminho da instalação.

Eu não gosto de ícones na área de trabalho, fica ao seu critério deixar criar ou não!
Coloque o Apache e o MySQL como serviços, pois assim você pode configurar para que eles sejam iniciados somente quando for necessário, ou seja, quando você for usar o computador para lazer, estes serviços não irão consumir memória nem processamento.

Definindo os serviços do Apache e MySQL.

Serão instalados todos os componentes necessários para o funcionamento! Depois de instalado, ele vai iniciar os serviços, caso você esteja com o firewall ativado, é só você desbloquear o httpd.exe (serviço do Apache).

Finalizando a instalação.

Sim, para conhecermos o painel do XAMPP.
Podemos notar que o Apache e o MySQL estão rodando. Vamos verificar se a instalação foi bem sucedida, clique no botão "Admin…" do Apache.

Painel de Controle do XAMPP

Repare na URL, que se inicia com http://localhost, isso quer dizer que as páginas estão rodando no servidor Apache.

Configurando a linguagem do painel.

Escolhendo PT-BR, iremos para a página principal do XAMPP. Você pode vasculhar todo o conteúdo, mas vou concentrar no phpMyAdmin.

Clique no link "phpMyAdmin" no menu "Ferramentas".

Menu Ferramentas com o phpMyAdmin

Se iniciou a tela do phpMyAdmin, significa que o MySQL foi instalado corretamente.

Painel do phpMyAdmin.

O ideal é deixar o MySQL com senha, isso por questões de segurança e padrão. Você pode seguir o manual do XAMPP na parte de “Uma questão de segurança”, vou explicar somente a parte de alteração do usuário do MySQL diretamente no phpMyAdmin. Para mudar a senha de root, clique em "Privilégios".

Clique no ícone de edição dos privilégios do usuário root. Digite uma senha de sua preferência e clique em executar. Faça a mesma operação para o outro usuário root.

Registrando uma senha para o root no MySQL.

Quando você clicar no link "Servidor:localhost", vai dar uma mensagem de erro. Vamos alterar o arquivo de configuração para que volte a acessar normalmente.

Erro ao tentar acessar o phpMyAdmin.

Abra o arquivo "config.inc.php" que está localizado em c:xamppphpMyAdmin (depende do caminho onde foi instalado o XAMPP, poderia ser por exemplo em C:Arquivos de programasxamppphpMyAdmin).

Editando as configurações no arquivo PHP.

Escreva dentro das aspas a sua senha. Volte ao phpMyAdmin e de um refresh na página (se der erro, limpe o cache da sua máquina).
Para garantir as mudanças (essa etapa não é obrigatória) clique em "RELOAD PRIVILEGES".

Verificando o acesso com senha no phpMyAdmin.

Pronto, seu Apache está instalado e rodando PHP e o MySQL.

Para mais detalhes sobre a instalação do XAMPP, veja aqui.

Se você queria somente o PHP com MySQL, pode parar por aqui, mas indico instalar o ColdFusion, nem que seja para você fazer alguns testes e aprender mais uma linguagem.

Sempre que escrever os tutorias no Blog da Zetai (http://www.zetai.com.br/blog), vou tentar escrever sempre nas duas linguagens.

Se você quer saber mais sobre o ColdFusion (podemos chamar simplesmente de CF), existe muito material na Internet, inclusive em português, além do LiveDocs CF8.

Mas como opinião própria, posso garantir que as funcionalidades e facilidades que o CF possui irão agradar, sem esquecer a comunidade que é bem ativa e compartilham o conhecimento (assim como estou tentando fazer agora, rs).

Instalação do ColdFusion.

Antes de instalar o CF, procuro deixar uma cópia do arquivo de configuração do Apache sem o CF. Faço isso, pois quando vou trabalhar em um projeto PHP, utilizo esse arquivo e não inicio o serviço do ColdFusion.
O arquivo é "httpd.conf" e está localizado em C:xamppapacheconf a instalação do CF irá alterar esse arquivo, por isso crie uma cópia e coloque um nome sugestivo, como por exemplo "httpd_PHP.conf"
Clique no executável e em OK.

Clique em Next. Leia os termos e aceite para prosseguir a instalação.

Telas iniciais da instalação do CF.

Agora escolha a opção "Developer Edition", pois ela é free, com todas as funcionalidades liberadas para desenvolvimento na máquina local. Porém essa versão poderá ser acessada por 2 IP locais, mas informações em adobe.com/products/coldfusion/editions.

Opção Developer Edition.

Deixe a opção "Server configuration".

Configurações do servidor CF.

Deixe todas as opções escolhidas.

Serviços que irão compor o CF.

Para o diretório de instalação, vou escolher instalar dentro do diretório do XAMPP, assim fica tudo em uma pasta só.

Diretório de instalação.

Aceite os termos do LiveCycle para prosseguir a instalação.
Clique em Next.

Agora vamos configurar o servidor onde o ColdFusion irá rodar. Clique em Add e siga as seguintes configurações:

Incluindo servidor.

Web Server: Apache.
Configuration Directory: C:xamppapacheconf (diretório onde está o arquivo de configuração do Apache).
Directory and file name of server binary: C:xamppapachebinhttpd.exe (arquivo executável do serviço do Apache).

Configurações do Apache preenchidas, para funcionar com o ColdFusion.

Clique em OK e em Next.

Agora vamos configurar o diretório onde o Admin do ColdFusion será instalado, normalmente é no diretório HTDOCS do XAMPP (C:xampphtdocs).

Configurar o diretório onde o Admin do ColdFusion será instalado.

Posteriormente você pode alterar/configurar essa pasta em local diferente. Faço isso para poder ter mobilidade com meus arquivos, por exemplo, você pode colocar os arquivos em outra partição, em um pen driver; gosto de deixar os meus em um HD externo.
Digite a senha para acessar o Admin do CF.

Ative o RDS e coloque uma senha (pode ser a mesma do admin, mas indico utilizar só para servidores de testes).

Senhas do admin e RDS do ColdFusion.

Agora o instalador vai mostrar algumas informações da instalação, se tiver tudo correto, clique em Install.

Resumo do que foi configurado.

A instalação demora um pouco mesmo, é normal! Quando a instalação terminar, vai dar uma mensagem para executar o admin do CF. Clique em Done.

Provavelmente o sistema operacional vai querer fazer o download do arquivo, pois o Apache ainda não reconhece a extensão CFM.

Clique em cancelar e reinicie o serviço Apache. No painel de controle do XAMPP, clique em Stop do serviço Apache, logo que parar o serviço clique em Start.

Para poder concluir a configuração do admin do CF, acesse http://localhost/CFIDE/administrator/index.cfm OU vá em Iniciar >> Todos os Programas >> Adobe >> ColdFusion 8 >> Administrador.

Abrindo o admin do CF para finalizar as configurações.

Digite a senha que você escolheu na instalação e clique em login. Então irá para tela de configuração, espere alguns minutos enquanto ele configura o servidor. Esse procedimento só acontece na primeira vez que você acessa o Admin do CF. Após configurar ele dará a mensagem a seguir, clique em OK.

Telas de auto configuração do admin do CF.

Pronto, agora você já tem um servidor completo!

Tela inicial do admin do ColdFusion.

Espero ter ajudado as pessoas que estão iniciando ou querem aprender novas linguagens.

Fiz o tutorial passo a passo para que as pessoas possam acompanhar todo o processo, tela a tela. Depois de executar esses passos algumas vezes, tenho certeza que você estará "craque" em instalar os servidores na sua máquina.

Lembrando que o tutorial está disponível em http://www.marcionakano.com.br/blog/post/instalando-apache-mysql-coldfusion-php.pdf

Abraços, Marcio Nakano

Calendários em Java Script

Acredito que a maioria dos formulários possui algum campo de data (principalmente data de nascimento, rs).

Separei dois tipos de calendários em Java Script para poderem testar.

Gostei muito dos dois, pois são bem fáceis de implementar, além de não usar nenhuma programação do lado do servidor.

Um deles com designer muito bonito e com a possibilidade de customizar do jeito que você achar melhor (isso se achar necessário, pois as opções de layout e designer são muito boas).
O outro é puro HTML + CSS dentro de um único arquivo .js, ou seja, se você tiver um pouco de paciência pode customizar do jeito que quiser.

O Simple Calendar Widget é muito simples, tanto que é apenas um arquivo.

O Mootools-Calendar é uma classe de calendário para ser utilizado junto com o Mootools e tem diversas possibilidades de implementação.
Um ponto que me chamou a atenção, é que nesse caso o usuário não pode alterar a data via teclado, ou seja, a chance dele errar é mínima, mas acredito que existam casos onde essa alteração se faz necessária, procurei no site de origem mas não encontrei tal solução (um atributo ou algo parecido).

Clique aqui para ver o exemplo.

Clique aqui para baixar os arquivos.

Quem quiser ver outros exemplos:
Simple Calendar Widget http://www.garrett.nildram.co.uk/calendar/scw.htm
Calendar Mootools http://electricprism.com/aeron/calendar/

Marcio Nakano

Manipulando a saída de dados no browser CFxPHP

Pra galera que programa em várias linguagens diferentes e as vezes fica “encucada” pensando se existe uma função equivalente na outra linguagem que conhece, ai vai uma luz na manipulação de saída de dados no browser.

Estas funções devem ser utilizadas quando você deseja mostrar o conteúdo gerado até um determinado momento, nas situações em que o processamento da página é longo.

Pois bem, hoje me deparei com uma dessas situações, queria a função getPageContext().getOut().flush() disponível no ColdFusion MX porém para utilizar em PHP.

Solução em ColdFusion:


<cfloop index="x" from="1" to="10" step="1">
<cfloop index="randomindex" from="1" to="500000" step="1">
<cfset random=rand()>
</cfloop>
<cfoutput>Line to show #x#<br></cfoutput>
<cfflush>
</cfloop>



Pode ser melhor detalhado aqui.

ou ainda

getPageContext().getOut().flush();<br>

E no PHP:

<?php
for ($i = 0; $i<10; $i++){
echo "Line to show ".$i."<br>";
echo str_pad(”,4096)."\n";
flush();
sleep(2);
}
?>

O código PHP consegui aqui.