Está en la página 1de 45

Instalao de Servidor WEB em ambiente Windows

(Apache + PHP + MySQL + phpMyAdmin)

Produzido por: Wellington Telles Cunha Data do Original: 09 de agosto de 2004 Verso: 2.0 Data de Atualizao: 07 de fevereiro de 2006

Instalao de Servidor WEB em Ambiente Windows

ndice
APACHE 2.0.............................................................................................................................................................2 ADQUIRINDO O APACHE HTTP SERVER 2.0..................................................................................................................2 INSTALAO.............................................................................................................................................................2 TESTANDO A INSTALAO..........................................................................................................................................6 INFORMAES ADICIONAIS.........................................................................................................................................7 PHP............................................................................................................................................................................8 ADQUIRINDO O PHP.................................................................................................................................................8 PHP NO WINDOWS 95..............................................................................................................................................8 INSTALAO AUTOMTICA.........................................................................................................................................8 Instalao........................................................................................................................................................8 Configurao do PHP.INI.............................................................................................................................15 INSTALAO MANUAL.............................................................................................................................................16 Instalao......................................................................................................................................................16 Configurao do arquivo PHP.INI...............................................................................................................16 CONFIGURANDO O APACHE PARA EXECUTAR SCRIPTS PHP4..........................................................................................17 TESTANDO AS CONFIGURAES DO PHP.....................................................................................................................19 MYSQL ..................................................................................................................................................................21 ADQUIRINDO O MYSQL SERVER ............................................................................................................................21 INSTALAO...........................................................................................................................................................21 INSTALAO MYODBC.........................................................................................................................................23 CONFIGURANDO O MYSQL SERVER.........................................................................................................................25 SE VOC NO QUISER USAR O WINMYSQLADMIN...............................................................................................28 Iniciando o MySQL.......................................................................................................................................28 TESTANDO AS CONFIGURAES DO MYSQL SERVER...................................................................................................30 PHPMYADMIN......................................................................................................................................................32 ONDE ADQUIRIR......................................................................................................................................................32 INSTALAO...........................................................................................................................................................32 TESTANDO A INSTALAO........................................................................................................................................33 REFERNCIA........................................................................................................................................................34 COMANDO BSICOS MYSQL...................................................................................................................................34 INTRODUO SINTAXE PHP........................................................................................................................35 MUDANA DE TIPO DAS VARIVEIS EM PHP.............................................................................................36 VARIVEIS DE SISTEMA EM PHP....................................................................................................................36 VARIVEIS EM PHP............................................................................................................................................38

-1-

Instalao de Servidor WEB em Ambiente Windows

Apache 2.0
Adquirindo o Apache Http Server 2.0
O Apache Server pode ser adquirido em seu site oficial, http://apache.org// . Em http://apache.org/dist/httpd/binaries/win32/ esto os arquivos que voc precisa para instalar o Apache.

Instalao
1. Execute o arquivo: apache_2.0.49-win32-x86-no_ssl.msi; 2. E aparecer a seguinte tela:

3. <NEXT>

4. Selecione: I accept the terms in the license agreement

-2-

Instalao de Servidor WEB em Ambiente Windows


5. <NEXT>

6. <NEXT>

7. Preencha os campos (default) Network Domain: localdomain ou localhost Server Name: localhost Administrators Email Address : <seu e-mail> Mantenha a porta 80 com um servio.

-3-

Instalao de Servidor WEB em Ambiente Windows


8. <NEXT>

9. Selecione Typical

10. Escolha o diretrio. (exemplo: e:\apache\)

-4-

Instalao de Servidor WEB em Ambiente Windows


11. <INSTALL>

12. <Desbloquear>

-5-

Instalao de Servidor WEB em Ambiente Windows

13. <FINISH>

Testando a Instalao
1. Abra o programa Internet Explorer e digite na linha de endereo: http://localhost ; 2. Se aparecer a tela como a abaixo quer dizer que a instalao funcionou.

-6-

Instalao de Servidor WEB em Ambiente Windows Informaes Adicionais


Se voc criou um Server Name diferente de LOCALHOST como www.meumicro.com.br, lembre-se que voc dever adicionar ao seu HOSTS: <IP do seu computador> www.meumicro.com.br

Se voc quiser mudar o local de armazenamento de suas pginas, abra o arquivo: E:\Apache\Apache2\conf\httpd.conf e localize as linhas: DocumentRoot "E:/Apache/Apache2/htdocs" <Directory "E:/Apache/Apache2/htdocs"> E altere para o local desejado.

-7-

Instalao de Servidor WEB em Ambiente Windows

PHP
Adquirindo o PHP
O site oficial do PHP www.php.net . Assim como o Apache, o site do PHP tem tudo o que voc precisa. Para baixar o php, v em http://www.php.net/download.php . Voc poder baixar a verso INSTALLER (automtica) e a verso WIN32 (manual). A verso manual a mais completa.

PHP no Windows 95
Para instalar o PHP no Windows 95 voc dever atualizar o DCOM. Voc pode fazlo atravs do site de Microsoft: http://download.microsoft.com/msdownload/dcom/95/x86/em/dcom95.exe .

Instalao Automtica
Instalao
1. Execute o arquivo: php-4.3.7-installer.exe

2. Pare o Apache Server a. V ao trayicon

b. Selecione o apache com o boto direito

-8-

Instalao de Servidor WEB em Ambiente Windows

c. <STOP>

3. <NEXT>

-9-

Instalao de Servidor WEB em Ambiente Windows

4. <I AGREE>

5. <ADVANCED> + <NEXT>

6. Selecione o diretrio onde deseja instalar e <NEXT>. Nota: O PHP tem que estar em um diretrio com o nome sem espaos, ento evite os diretrios do tipo: C:\Arquivos de Programas\PHP.

- 10 -

Instalao de Servidor WEB em Ambiente Windows

7. <NEXT>

8. <NEXT>

9. Preencha o formulrio (exemplo: default)

- 11 -

Instalao de Servidor WEB em Ambiente Windows


SMTP Server: localhost Mail : me@localhost.com

Manualmente procure por [mail function] e a linha: SMTP= e no lugar de localhost, coloque o nome do provedor e na linha: sendmail_from= no lugar de me@localhost troque pelo seu e-mail verdadeiro. 10. <NEXT>

11. Selecione o Apache

- 12 -

Instalao de Servidor WEB em Ambiente Windows

12. <NEXT>

13. <NEXT>

14. <NEXT>

- 13 -

Instalao de Servidor WEB em Ambiente Windows

15. <OK>

16. <OK> 17. Reinicie o apache (START)

- 14 -

Instalao de Servidor WEB em Ambiente Windows

Configurao do PHP.INI
Localize a linha: display_errors Verifique se est em ON para podermos verificar todos os erros. display_errors=ON Localize a linha: extension_dir = "./" E altere para: (o diretrio de instalao do PHP) extension_dir = "c:/php5/ext/" Localize a linha: ;extension=php_mysql.dll Remova o ponto e vrgula da frente. extension=php_mysql.dll Localize a linha: (caso queira a biblioteca GD para a manipulao de imagens) ;extension=php_gd2.dll Remova o ponto e virgule da frente: extension=php_gd2.dll

- 15 -

Instalao de Servidor WEB em Ambiente Windows

Instalao Manual
Instalao
Descompactar o PHP (php-5.1.2-Win32.zip) no diretrio da raiz. No drive E (por exemplo). O nome ficar E:\php-5.1.2-Win32. Renomear para E:\PHP Copie as bibliotecas php5ts.dll, libmysql.dll para o diretrio C:\WINDOWS\SYSTEM32 se for no Windows XP/2K, no diretrio C:\WINNT\SYSTEM32 no Windows NT e no diretrio C:\WINDOWS\SYSTEM no Windows 9X/Me. Nota: No misture a biblioteca de vrias verses de PHP, pois poder causar problemas de funcionamento. Caso necessrio copie tambm as seguintes bibliotecas: php5activescript.dll; php5apache2.dll; php5apache.dll; php5isapi.dll; php5nsapi.dll; php5pi3web.dll; php5srvlt.dll.

Copie o arquivo php.ini-recommended para a pasta C:\WINDOWS no Windows XP/2K/9X/Me ou C:\WINNT no Windows NT. Renomear o arquivo para php.ini.

Configurao do arquivo PHP.INI


Localize a linha: display_errors Verifique se est em ON para podermos verificar todos os erros. display_errors=ON Localize a linha:

- 16 -

Instalao de Servidor WEB em Ambiente Windows


extension_dir = "./" E altere para: (o diretrio de instalao do PHP) extension_dir = "c:/php5/ext/" Localize a linha: ;extension=php_mysql.dll Remova o ponto e vrgula da frente. extension=php_mysql.dll Localize a linha: (caso queira a biblioteca GD para a manipulao de imagens) ;extension=php_gd2.dll Remova o ponto e virgule da frente: extension=php_gd2.dll Manualmente, procure por [Sessions] e a linha: session.save_path e coloque o destino.

Configurando o Apache para executar scripts PHP4


1. Localize o arquivo httpd.conf na pasta <drive>:\Apache\Apache2\conf. 2. Abra o arquivo httpd.conf com uma editor tipo bloco de notas. Nota: s faa o item 3 e 4 se for fazer uma instalao CGI, que segundo o site do PHP diz que no recomendvel em funo da segurana, a soluo est nos itens 7 e 8 que a instalao de mdulo. 3. Localize no arquivo o seguinte bloco: # # ScriptAlias: This controls which directories contain server scripts. # ScriptAliases are essentially the same as Aliases, except that # documents in the realname directory are treated as applications and # run by the server when requested rather than as documents sent to the client. # The same rules about trailing "/" apply to ScriptAlias directives as to # Alias. # ScriptAlias /cgi-bin/ "E:/Apache/Apache2/cgi-bin/"

- 17 -

Instalao de Servidor WEB em Ambiente Windows


4. Acrescente a seguinte linha: ScriptAlias /php/ "E:/php/" 5. Localize no arquivo o seguinte bloco: #AddEncoding x-compress .Z #AddEncoding x-gzip .gz .tgz # # If the AddEncoding directives above are commented-out, then you # probably should define those extensions to indicate media types: # AddType application/x-compress .Z AddType application/x-gzip .gz .tgz 6. Acrescente as seguintes linhas: AddType application/x-httpd-php .php .phtml .html AddType application/x-httpd-php-source .phps 7. Localize o a seguinte linha: #LoadModule 8. Acrescente a seguinte linha: LoadModule php5_module $CAMINHO_DO_PHP/php5apache.dll 9. Localize no arquivo o seguinte bloco: # # # # # # # Action lets you define media types that will execute a script whenever a matching file is called. This eliminates the need for repeated URL pathnames for oft-used CGI file processors. Format: Action media/type /cgi-script/location Format: Action handler-name /cgi-script/location 10. Acrescente a seguinte linha: Action application/x-httpd-php /php/php.exe 11. Localize no arquivo o seguinte bloco: # # # # # # DirectoryIndex: sets the file that Apache will serve if a directory is requested. The index.html.var file (a type-map) is used to deliver contentnegotiated documents. The MultiViews Option can be used for the

- 18 -

Instalao de Servidor WEB em Ambiente Windows


# same purpose, but it is much slower. # DirectoryIndex index.html index.html.var 12. Altere a ltima linha desse bloco para: DirectoryIndex index.html index.html.var index.php index.phtml index.inc O servidor ir considerar a mesma ordem de disposio das extenses no arquivo httpd.conf como ordem de preferncia no momento de selecionar o ndice. 13. Salve as modificaes e reinicie o Apache (RESTART).

Testando as configuraes do PHP


1. Abra um editor de textos tipo bloco de notas e digite o seguinte: <? phpinfo(); ?> 2. Salve o seu arquivo na pasta: e:\apache\apache2\htdocs com o nome phpinfo.php. 3. Abra o programa do Internet Explorer e digite: http://localhost/phpinfo.php . 4. Se tudo estiver correto dever aparecer a seguinte tela:

- 19 -

Instalao de Servidor WEB em Ambiente Windows

- 20 -

Instalao de Servidor WEB em Ambiente Windows

MySQL
Adquirindo o MySQL Server
O MySQL pode ser adquirido em seu site oficial, http://www.mysql.com . Para o download do MySQL, pode ser feito diretamente visitando a pgina: www.mysql.com/downloads/mysql-3.23.html

Instalao
1. Descompacte o arquivo: mysql-4.0.20d-win.zip. 2. Execute o setup.exe.

3. <NEXT>

- 21 -

Instalao de Servidor WEB em Ambiente Windows


4. <NEXT>

5. Mude o diretrio para o desejado e <NEXT>

6. Selecione Typical

- 22 -

Instalao de Servidor WEB em Ambiente Windows

7. <FINISH>

Instalao MyODBC
1. Execute o arquivo: MyODBC-standard-3.51.8-win.exe

2. <NEXT>

- 23 -

Instalao de Servidor WEB em Ambiente Windows


3. <I ACCEPT THE LICENSE AGREEMENT>+<NEXT>

4. <NEXT>

5. <NEXT>

- 24 -

Instalao de Servidor WEB em Ambiente Windows

6. <FINISH>

Configurando o MySQL Server


1. Inicie o "winmysqladmin.exe" do diretrio em que voc instalou o MySQL, provavelmente:

2. Abrir a seguinte tela:

- 25 -

Instalao de Servidor WEB em Ambiente Windows


e depois:

User name: root Password: root 3. Essa tela ir fechar e ir para trayicon boto direito e selecione <SHOW ME> para abri l novamente clique com o

4.

Mande salvar o arquivo e feche o WinMySQLadmin. E o abra novamente.

5. Escolha o tipo de configurao:

- 26 -

Instalao de Servidor WEB em Ambiente Windows

Detalhes das configuraes Arquivos: my-huge.cnf - para sistemas muito grandes, com 1 GB ou mais de RAM; my-large.cnf - para sistemas grandes, com 512 MB de RAM; my-medium.cnf - para sistemas mdios, com 64-128 MB de RAM; my-small.cnf - para sistemas pequenos, com 64 ou menos de RAM. Servidores SQL: mysqld - Compilado com depurador e checagem automtica de alocao de memria, links simblicos, tabelas InnoDB e BDB. Requer TCP/IP; mysqld-opt - Otimizado para Processador Pentium. Requer TCP/IP; mysqld-nt - Otimizado para Processador Pentium. Tem suporte para names pipes. Voc pode rodar essa verso no Windows 98,mas nesse caso no ser possvel criar names pipes e deve ter TPC/IP instalado; mysqld-max - Compilado com suporte a links simblicos, tabelas InnoDB e BDB. Requer TCP/IP; mysqld-max-nt - Igual ao mysqld-max, mas compilado com suporte a names pipes;

- 27 -

Instalao de Servidor WEB em Ambiente Windows


6. <Save Modification> e volte para Enviroment e <Hide Me>, se o farol continuar verde porque a alterao funcionou. 7. Abra uma sesso DOS e execute: E:\mysql\bin> mysql u root mysql mysql> DELETE FROM user WHERE Host='localhost' AND User=''; mysql> FLUSH PRIVILEGES; mysql> QUIT E:\mysql\bin>mysqladmin -u root password your_password

Se voc no quiser usar o WINMYSQLADMIN


Iniciando o MySQL
1. Abra uma sesso do DOS INICIAR EXECUTAR

Digite CMD

2. V ao diretrio BIN onde voc instalou o MySQL No caso E:\Apache Group\mysql\bin

- 28 -

Instalao de Servidor WEB em Ambiente Windows

No Windows 9x execute o arquivo: mysqld-opt No Windows NT/2K/XP execute o arquivo mysqld-nt standalone ou mysqld-max-nt --standalone. Para parar o MySQL Server: mysqladmin u root shutdown Para testar o MySQL: mysqlshow u root mysql mysqladmin version status proc mysql test Para executar o MySQL como servio no Windows NT/2K/XP: mysqld-nt --install Para remover o servio: mysqld-nt --remove Para iniciar o MySQL: NET START mysql Para parar o MySQL:

- 29 -

Instalao de Servidor WEB em Ambiente Windows


NET STOP mysql

Testando as configuraes do MySQL Server


Abra o bloco de notas e digite as linhas abaixo, e salve este arquivo como "mysql.php" na pasta "e:\ apache\apache2\htdocs" se houver problemas abra o arquivo: \mysql\scripts\mysqlaccess.conf <? $HOST = "localhost"; $USER = "root"; $SENHA = "root"; $conexao = mysql_connect($HOST,$USER,$SENHA); $query = mysql_query("select version() as ver"); $versao = mysql_fetch_object($query); echo "A versao instalada do MySQL eh a $versao->ver"; ?> Abra seu navegador favorito e digite: "http://localhost/mysql.php" Caso esteja tudo configurado corretamente, voc visualizar a verso do MySQL instalado:

Se aparecer a seguinte tela:

- 30 -

Instalao de Servidor WEB em Ambiente Windows

Abra uma sesso DOS e execute: E:\mysql\bin> mysql u root mysql mysql> DELETE FROM user WHERE Host='localhost' AND User=''; mysql> FLUSH PRIVILEGES; mysql> QUIT E:\mysql\bin>mysqladmin -u root password your_password Feche a sesso DOS. D um Atualizar (F5) no Internet Explorer e tudo ficar normal.

- 31 -

Instalao de Servidor WEB em Ambiente Windows

phpMyAdmin
Onde adquirir
No site oficial: http://www.phpmyadmin.net/

Instalao
1. Descompacte o arquivo phpMyAdmin-2.5.4-rc1 no diretrio do apache e o renomeie para phpMyAdmin:

2. Abra o arquivo config.inc.php. 3. Localize o seguinte trecho: $cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname or IP address $cfg['Servers'][$i]['port'] = ''; // MySQL port - leave blank for default port $cfg['Servers'][$i]['socket'] = ''; // Path to the socket - leave blank for default socket $cfg['Servers'][$i]['connect_type'] = 'tcp'; // How to connect to MySQL server ('tcp' or 'socket') $cfg['Servers'][$i]['compress'] = FALSE; // Use compressed protocol for the MySQL connection // (requires PHP >= 4.3.0) $cfg['Servers'][$i]['controluser'] = ''; // MySQL control user settings // (this user must have read-only $cfg['Servers'][$i]['controlpass'] = ''; // access to the "mysql/user" // and "mysql/db" tables)

- 32 -

Instalao de Servidor WEB em Ambiente Windows


$cfg['Servers'][$i]['auth_type'] = 'config'; // Authentication method (config, http or cookie based)? $cfg['Servers'][$i]['user'] = 'root'; // MySQL user $cfg['Servers'][$i]['password'] = ''; // MySQL password (only needed 4. E adicione a senha root na linha password. 5. Localize a linha com: $cfg['PmaAbsoluteUri'] = ; 6. Substitua pela o caminho da sua pgina: $cfg['PmaAbsoluteUri'] =www.suapagina.com.br/phpmyadmin/ ; 7. Salve o arquivo.

Testando a Instalao
1. Abra o Internet Explorer e digite: www.suapagina.com.br/phpmyadmin/ e dever aparece a seguinte tela:

- 33 -

Instalao de Servidor WEB em Ambiente Windows

Referncia

Comando Bsicos MySQL


No vamos entrar numa explicao pormenorizada do funcionamento dessa base de dados, pois isso dava-nos para um manual inteiro. Como resumos, aqui se propem as operaes mais bsicas: Instruo Show databases; Use nome_da_base Create Database nome_da_base; Drop Database nome_da_base; Show tables; Describe nome_da_tabela; Drop Table nome_da_tabela; Load Data Local Infile "ficheiro.txt" Into Table nome_da_tabela; Quit Descrio Mostra o conjunto da base de dados presente no servidor Determina a base de dados sobre a qual vamos trabalhar Cria uma nova bd com o nome especificado Elimina a base de dados com o nome especificado Mostra as tabelas presentes na base de dados actual Descreve os campos que compem a tabela Apaga a tabela da base de dados Cria os registos da tabela a partir de um ficheiro de texto no qual separamos por tabulaes todos os campos de um mesmo registro Sair de MySQL

Para evitarmos ter de editar as nossas tabelas diretamente sobre os arquivos de texto, pode ser muito prtico usar qualquer outra base de dados com um editor e exportar a seguir a tabela num arquivo de texto configurado para deixar tabulaes entre cada campo. Isto possvel em Access, por exemplo, clicando com o boto direito sobre a tabela que queremos converter e escolhendo a opo exportar. Uma janela de dialogo aparecer na qual escolheremos salvar o arquivo em tipo texto. O passo seguinte ser escolher um formato delimitado por tabulaes sem qualificador de texto. Outra possibilidade que pode ser muito prtica e que nos evita trabalhar continuamente com comandos do estilo aos do tempo da carochinha servir-se de programas em PHP ou Perl j existentes e que se podem obter na rede. O mais popular sem duvida o phpMyAdmin. Estes tipos de scripts so executados desde um navegador e podem, por tanto, albergados no nosso servidor ou empregues em local para, a partir deles, administrar MySQL de uma forma menos difcil.

- 34 -

Instalao de Servidor WEB em Ambiente Windows

Introduo sintaxe PHP


Explicamos as pautas gerais a seguir para incluir PHP no cdigo da nossa pgina e a forma de introduzir comentrios.

PHP escreve-se dentro da prpria pgina web, junto ao cdigo HTML e como para qualquer outro tipo de linguagem includo num cdigo HTML, em PHP necessitamos de especificar quais so as partes constituintes do cdigo escritas nesta linguagem. Isto fazse, como em outros casos, delimitando o nosso cdigo por etiquetas. Podemos utilizar diversos modelos de etiquetas em funo das nossas preferncias e costumes. H que ter em conta que no necessariamente todas esto configuradas inicialmente e que outras s esto disponveis a partir de uma determinada verso (3.0.4). A maneira de abrir e fechar as etiquetas so: <? <% <?php <script e ?> e %> e ?> languaje="php">

Este ltimo modo est principalmente aconselhado a todos aqueles que tenham a coragem de trabalhar com o Front Page, pois usando qualquer outra etiqueta corremos o risco que a aplicao no-la apague sem mais nem menos pois trata-se de um cdigo incompreensvel para ela. O modo de funcionamento de uma pgina PHP, a grandes rasgos, no difere do clssico de uma pgina dinmica do lado do servidor: O servidor vai reconhecer a extenso correspondente a pgina PHP (phtml, php, php4,...) e antes de envi-la ao navegador vai encarregar-se de interpretar e executar tudo aquilo que se encontre entre as etiquetas correspondentes a linguagem PHP. O resto, vai envi-lo tal qual, posto que assumir que se trata de cdigo HTML absolutamente compreensvel para o navegador. Outra caracterstica geral dos scipts em PHP a forma na qual se separam umas sentenas das outras. Para faze-lo, temos de acabar cada sentena com um ponto e virgula ";". Para a ultima sentena, a que vai mesmo antes do etiqueta de fecho, no seria necessrio. Inclumos tambm neste capitulo a sntaxe de comentrios. Um comentrio, para aqueles que no o saibam, uma frase ou palavra que ns inclumos no cdigo para compreende-lo mais facilmente ao voltar a l-lo um tempo mais tarde e por suposto, o computador tem de ignorar pois no vai dirigido a ele, se no a ns mesmos. Os comentrios tem uma grande utilidade pois muito fcil esquecer-se do funcionamento se um script programado faz algum tempo sendo muito til se queremos fazer rapidamente compreensvel o nosso cdigo a outra pessoa. Pois bem, a forma de incluir estes comentrios varia conforme o tamanho do comentrio, isto se queres escrever uma linha ou mais. Vejamos um primeiro exemplo de script: <? $mensagem="Tenho fome!!"; //Comentrio de uma linha echo $mensagem; #Este comentario tambm de uma linha /*Neste caso o meu comentrio ocupa varias linhas, ests a ver? */ ?> Executar script Se usarmos dupla barra (//) ou o smbolo # podemos introduzir comentrios de uma linha. Mediante /* e */ criamos comentrios multilinha. Claro que, nada nos impede de usar os ltimos com uma s linha. No te preocupes se no compreendes o texto contido nas etiquetas, tudo chegar.

- 35 -

Instalao de Servidor WEB em Ambiente Windows


Adiantamos que as variveis em PHP definem-se antepondo um smbolo de dlar ($) e que a instruo echo serve para sacar pelo ecr o que est escrito a continuao. Lembramos que todo o texto introduzido em forma de comentrio completamente ignorado pelo servidor. importante acostumar-se a deixar comentrios, com o tempo agradece-se.

Mudana de tipo das variveis em PHP


Formas em que uma varivel PHP pode ir variando o seu tipo

PHP no requer que indiquemos o tipo que vai conter a varivel pois deduzida pelo valor que atribumos varivel. Do mesmo modo, encarrega-se de atualizar automaticamente o tipo da varivel cada vez que lhe atribuamos um novo valor. Por isso, para mudar o tipo de uma varivel simplesmente temos de atribuir um valor com o novo tipo.
Nota: Excluem-se neste caso a mudana de variveis de tipo Array porque a sintaxe pode resultar ambgua ao expressar esse cdigo, isto , pode dar-se o caso que uma linha de cdigo possa significar duas coisas. $a = "1"; //$a uma cadeia $a[0] = "f"; //Estamos editando o ndice da cadeia ou forando a array?

Foragem De todos modos, podemos forar uma varivel para que mude o tipo com a funo setType().
setType($variavel,"novo_tipo");

A funo setType() atualiza o tipo de $variavel a "novo_tipo" e retorna um boleano indicando se houve xito ou no com a converso. Entre "novo_tipo" temos: "integer" "double" "string" "array" "object"

Tambm podemos fazer com que uma varivel se comporte como um tipo determinado forando-a, da mesma maneira a como se faz na linguagem C.
$variavel = "23"; $variavel = (int) $variavel;

As foragens permitidas so: (int), (integer) - fora a inteiro (integer) (real), (double), (float) - fora a duplo (double) (string) - fora a cadeia (string) (array) - fora a array (array) (object) - fora a objeto (object)

Variveis de sistema em PHP


O que so e para que servem estas variveis do servidor. Comentamos algumas das mais teis.

- 36 -

Instalao de Servidor WEB em Ambiente Windows


Dada a sua natureza de linguagem do lado do servidor, PHP capaz de nos dar acesso a toda uma srie de variveis que nos informam sobre o nosso servidor e sobre o cliente. A informao destas variveis atribuda pelo servidor e em nenhum caso nos possvel modificar os seus valores directamente mediante o script. Para faz-lo necessrio influir sobre a propriedade que definem. Existem vrias variveis deste tipo, algumas sem utilidade aparente e outras realmente interessantes e com uma aplicao directa para o nosso site. Aqui enumeramos algumas destas variveis e a informao que nos oferecem: Varivel Descrio Informa-nos principalmente sobre o sistema operativo e tipo e verso do navegador utilizado pelo cibernauta. A sua principal utilidade radica em que, a partir desta informao, podemos redireccionar os nossos usurios para pginas optimizadas para o seu navegador ou realizar qualquer outro tipo de aco no contexto de um navegador determinado.

$HTTP_USER_AGENT

Retorna-nos a ou as abreviaes da lngua considerada como principal pelo navegador. Esta lngua ou lnguas principais $HTTP_ACCEPT_LANGUAGE podem ser escolhidas no menu de opes do navegador. Esta varivel torna-se tambm extremamente til para enviar o cibernauta s pginas na sua lngua, se que existem. $HTTP_REFERER Indica-nos a URL com a qual o cibernauta teve acesso a pgina. Muito interessante para gerar botes de "atrs" dinmicos ou para criar os nossos prprios sistemas estatsticos. Retorna-nos uma cadeia com a URL do script que est a ser executado. Muito interessante para criar botes para recarregar a pgina. Trata-se de um array que armazena os nomes e os contedos das variveis enviadas ao script por URL ou por formulrios GET. Trata-se de um array que armazena os nomes e os contedos das variveis enviadas ao script por meio de um formulrio POST. Trata-se de um array que armazena os nomes o os contedos das cookies. Veremos o que so mais tarde. Armazena a varivel usurio quando se efectua a entrada a pginas de acesso restringido. Combinado com $PHP_AUTH_PW ideal para controlar o acesso s pginas internas do site. Armazena a varivel password quando se efectua a entrada a pginas de acesso restringido. Combinado com $PHP_AUTH_USER ideal para controlar o acesso s pginas internas do site. Mostra o endereo IP do visitante. Retorna-nos o path fsico no qual se encontra alojada a pgina no servidor. Guarda o identificador da sesso do usurio. Veremos mais frente o que so as sesses.

$PHP_SELF

$HTTP_GET_VARS

$HTTP_POST_VARS $HTTP_COOKIES_VARS

$PHP_AUTH_USER

$PHP_AUTH_PW $REMOTE_ADDR $DOCUMENT_ROOT $PHPSESSID

Nem todas as variveis esto disponveis na totalidade dos servidores ou em determinadas verses dum mesmo servidor. Ademais, algumas delas tem de ser previamente activadas ou definidas por meio de algum evento. Assim, por exemplo, a

- 37 -

Instalao de Servidor WEB em Ambiente Windows


varivel $HTTP_REFERER no est definida a menos que o cibernauta aceda ao script a partir de um link desde outra pgina. Variveis superglobais A partir de PHP 4.1.0, dispem-se de um conjunto de variveis de tipo array que mantm informao do sistema, chamadas superglobais porque se definem automaticamente num mbito global. Estas variveis fazem referncia s mesmas que se acediam antes por meio dos arrays do tipo $HTTP_*_VARS. Estas ainda existem, ainda que a partir de PHP 5.0.0 podem-se desactivar com a diretiva register_long_arrays. A lista destas variveis, extrada directamente da documentao de PHP a seguinte: $GLOBALS Contem uma referncia a cada varivel disponvel no espectro das variveis do script. As chaves desta matriz so os nomes das variveis globais. $GLOBALS existe desde PHP 3. $_SERVER Variveis definidas pelo servidor web ou directamente relacionadas com o entorno onde se est a executar.Anloga a antiga matriz $HTTP_SERVER_VARS (a qual ainda est disponvel, ainda que no se utilize). $_GET Variveis proporcionadas ao script por meio de HTTP GET. Anloga a antiga matriz $HTTP_GET_VARS (que ainda est disponvel, ainda que no se utilize). $_POST Variveis proporcionadas ao script por meio de HTTP POST. Anloga a antiga matriz $HTTP_POST_VARS (que ainda est disponvel, ainda que no se utilize). $_COOKIE Variveis proporcionadas ao script por meio de HTTP cookies. Anloga a antiga matriz $HTTP_COOKIE_VARS (que ainda est disponvel, ainda que no se utilize). $_FILES Variveis proporcionadas ao script por meio da subida de ficheiros via HTTP. Anloga a antiga matriz $HTTP_POST_FILES (que ainda est disponvel, ainda que no se utilize). $_ENV Variveis proporcionadas ao script por meio do entorno. Anloga a antiga matriz $HTTP_ENV_VARS (que ainda est disponvel, ainda que no se utilize). $_REQUEST Variveis proporcionadas ao script por meio de qualquer mecanismo de entrada do usurio e portanto no se pode confiar nelas. A presena e a ordem em que aparecem as variveis nesta matriz so definidas pela directiva de configurao variables_order. Esta matriz no tem um anlogo em verses anteriores a PHP 4.1.0. Veja tambm import_request_variables(). $_SESSION Variveis registradas na sesso do script. Anloga a antiga matriz $HTTP_SESSION_VARS (que ainda est disponvel, ainda que no se utilize).

Variveis em PHP
Tipos de variveis, caractersticas gerais e aspetos especficos de PHP destes elementos bsicos da programao.

No manual de pginas dinmicas introduzimos o conceito de varivel. No captulo anterior comentvamos que, para PHP, as variveis eram definidas antepondo o smbolo dlar ($) ao nome da varivel que estamos a definir. Dependendo do tipo de informao que contm, uma varivel pode ser considerada de um tipo ou de outro:

- 38 -

Instalao de Servidor WEB em Ambiente Windows


Variveis numricas Armazenam cifras Inteiros $inteiro=2002; Real Nmeros sem decimais $real=3.14159; Nmeros com ou sem decimal

Variveis alfanumricas Armazenam textos compostos de nmeros e/ou cifras Cadeias Armazenam variveis alfanumricas $cadeia="Ol amigo";

Tabelas Armazenam sries de informaes numricas e/ou alfanumricas o as variv eis Array que $sentido[1]="ver";$sentido[2]="tocar";$sentido[3]="ouvir"; s guarda $sentido[4]="gosto";$sentido[5]="cheirar"; m as tabela s

Objectos Trata-se de conjuntos de variveis e funes associadas. Tem uma complexidade maior que as variveis vistas at agora, mas a sua utilidade mais do que interessante. A diferena com outras linguagens, PHP tem uma grande flexibilidade a hora de operar com variveis. De facto, quando definimos uma varivel dando-lhe um valor, o computador atribui-lhe um tipo. Por exemplo, se definirmos uma varivel entre aspas, a varivel ser considerada de tipo cadeia (de caracteres):
$variavel="5"; //isto uma cadeia

Mesmo assim, se pedirmos ao nosso script para realizar uma operao matemtica com essa varivel, no obteremos uma mensagem de erro mas sim que a varivel cadeia ser assimilada como numrica:
<? $cadeia="5"; //isto uma cadeia $inteiro=3; //isto um intero echo $cadeia+$intero ?>

Executar script Este script dar como resultado "8". A varivel cadeia ser assimilada como inteiro (ainda que o seu tipo continua a ser de tipo cadeia) para poder realizar essa operao matemtica. Do mesmo modo, podemos operar com variveis de tipo inteiro e tipo real. No devemos preocupar-nos com nada, PHP encarrega-se durante a execuo de interpretar o tipo de varivel necessrio para o bom funcionamento do programa. Mesmo assim, em contraste, temos de ter cuidado para no mudar maisculas por minsculas, pois neste sentido, PHP sensvel. Convm pois trabalhar sempre em maisculas ou sempre em minsculas para evitar este tipo de mal-entendidos s vezes muito difceis de localizar. Variveis atribudas por referncia Em PHP tambm podemos atribuir variveis por referncia. Neste caso no se lhes atribui um valor, seno outra varivel, de modo que as duas variveis compartem o espao de memria para o mesmo dado.

- 39 -

Instalao de Servidor WEB em Ambiente Windows


A notao para atribuir por referncia colocar um "&" antes do nome da varivel.
<?php $foo = 'Bob'; // Atribui o valor 'Bob' a $foo $bar = &$foo; // Referncia $foo via $bar $bar = "O meu nome $bar"; // Modifica $bar.. echo $foo; // $foo tambm se modifica echo $bar; ?>

Isto dar como resultado a visualizao duas vezes do string "O meu nome Bob". Algo assim como: O meu nome BobO meu nome Bob

Seu primeiro script. Na minha primeira coluna eu ensinei como instalar e configurar o WAMP no seu computador, e agora estar apto a comear a fazer e testar os seu script no seu prprio computador, ento vamos l! Primeiramente gostaria de dizer que vou dedicar essa semana aos que esto comeando em PHP, pois quando eu tambem estava comeando nunca consegui achar colunas e nem tutoriais que ensinassem algo para quem estava comeando realmente, e depois irei colocar exemplos mais complexos! [Let's Work!]' Hoje vamos criar nosso primeiro script, vamos escrever o to conhecido "Hello World" na tela. Crie um novo documento .php no editor de sua preferncia *, ento entre as tag's <body> e </body> escreva: <? echo "Hello World"; ?> Esse exemplo ir imprimir na tela o texto Hello World, mas esse exemplo muito bsico, ento vamos fazer algo um pouco mais complicado, vamos usar um formulrio. <html> <head> <title>Usando um Formulario</title> </head> <body> <form name="form1" method="post" action=""> Qual o seu nome?<br> <input type="text" name="meu_nome"> <br> <br> <input type="submit" name="Submit" value="Enviar meu nome!"> </form> </body> </html> Note que na tag <form> tem os atributos method e action, o method como o nome diz o metodo de envio das informaes e action para que pgina os dados sero enviado no caso como no tem nada ele vai ser interpretado na mesma pgina do formulrio Ento na mesma pgina que voc criou o formurio voc acrescentar o seguinte contedo: <? $nome = $_POST['meu_nome']; if($nome == "Lula"){ echo "Bem-vindo presidente";

- 40 -

Instalao de Servidor WEB em Ambiente Windows


} elseif(isset($nome)){ echo "Bem-vindo $nome"; } ?> Explicando: $nome = $_POST['meu_nome']; => "Resgata" o campo nome do formulrio ; if($nome == "Lula"){ echo "Bem-vindo presidente"; } elseif(isset($nome)){ echo "Bem-vindo $nome"; } => "Se a variavel nome for igual a Lula, ento imprima na tela Bem-vindo presidente, seno imprima Bem-vindo 'nome que foi escrito no formulario" Obs importante: a funo isset() ser explicada em outra matria com mais detalhes de sua utilizao E apartir da voc pode usar sua imaginao e criar algo mais complexo como, inserir os dados vindos de um formulario em um banco de dados mais isso fica para outro dia!! Veja esse script funcionando: aqui * (Dreamweaver ou GoLive! por exemplo) Bom por hoje s, espero que tenham aprendido um poco do que PHP e do ele capaz de fazer, at a prxima! Qualquer dvida me mandem um e-mail: leandrobarral@portaldigidesign.com.br Autor: Leandro Barral Enviando Emails Por: Leandro Barral | Publicado em: 01.05.2005 | Visualizaes: 1301 Enviando E-mails Hoje irei ensinar uma coisa muito til que enviar e-mail pela prpria pgina do navegador. Para isso usado a funo mail( ) Podemos enviar nossas mensagem de duas formas: com ou sem contedo HTML, a primeira tem uma aparncia pior s que mais rpida e bem mais fcil de ser utilizada. Hoje irei ensinar como mandar e-mail sem contedo html [Let's Work!]' Sintaxe: mail(destinatrio, titulo, mensagem, header); Enviando e-mail sem contedo HTML Abaixo irei mostrar de forma simples como enviar e-mail sem contedo HTML. Note que so atribudas variaveis para armazenar os dados necessrios para usar a funo mail. D uma ateno especial para as variveis $msg e $header, note que no foi atribuido nenhum contedo HTML elas <? $destinatario = "leandrobarral@gmail.com"; $titulo = "Enviando e-mail com a funcao mail()"; $msg = "Esta uma mensagem sem contedo HTML "; $msg .= "O texto no ter nenhuma formatao."; $header = "from: conexao_wm@msn.com"; mail($destinatrio, $titulo, $msg, $header);

- 41 -

Instalao de Servidor WEB em Ambiente Windows


?> No e-mail de destino o contedo ter provavelmente a seguinte formatao: Enviando e-mail com a funcao mail() Esta uma mensagem sem contedo HTML O texto no ter nenhuma formatao. O texto ser exibido conforme as preferncias do navegador do usurio. Essa a primeira parte de trs onde tambm ensinarei como mandar e-mail com contedo HTML e tambm com contedo html e imagens. Espero que tenham gostado at a prxima! Enviando Emails 2 Parte Por: Leandro Barral | Publicado em: 14.05.2005 | Visualizaes: 1137 Enviando E-mails Na primeira coluna eu ensinei como enviar e-mail sem contedo HTML, hoje ser um pouco mais complexo, enviaremos e-mail COM contedo HTML, no e-mail podemos utilizar todos os recursos que o HTML oferecece. [Let's Work!]' Enviando email com contedo HTML A grande alterao ser na mensagem que agora conter as tag's HTML e no header Veja um exemplo: <? $assunto = "Enviando e-mail com a funo mail()"; $destino = "leandro.barral.wm@gmail.com"; $remetente = "conexao_wm@msn.com"; $copia = "conexao_wm@msn.com"; $header = "From: $remetente\n"; $header .= "Reply-to: $copia\n"; $header .= "Content-Type: text/html; charset=us-ascii\n"; $header .= "X-Mailer: PHP4 Script Language\n"; $header .= "X-Accept-Language: en\n"; $header .= "MIME-Version: 1.0\n"; $header .= "Content-Transfer-Encoding: 7bit\n"; $msg = "<body bgcolor='#CCCCCC'>"; $msg .= "<b>Visite meu novo Site e ganhe premios!!!</b>"; $msg .= "<br><br>"; $msg .= "<a href='http://www.conexaowm.com.br'>"; $msg .= "<b>Conexo Webmaster.com.br</b>"; $msg .= "</a>"; $msg .= "</body>"; mail($destino, $assunto, $msg, $header); ?> Obs importante: Aps cada termino das variaveis $header dever conter \n (new line ou nova linha). Observe que as variveis $msg e $header possuem um contedo muito diferente do exemplo em que mostrei como enviar sem contedo HTML. A variavel $msg agora tem contedo HTML e a varivel $header contm os headers que indicaro ferramenta de correio eletrnico que trata-se de uma mensagem com contedo HTML. Bom essa foi a segunda parte de trs onde ensinarei na prxima como enviar e-mails com contedo HTML e imagens. Espero que tenham gostado, nos vemos na prxima! Qualquer

- 42 -

Instalao de Servidor WEB em Ambiente Windows


dvida: leandrobarral@portaldigidesign.com.br, e por favor se quiser colocar minhas colunas em fruns e at em outros sites por favor peam autorizao. Gostaria de me desculpar pelo "erro".

Contador de Visitas Por: Leandro Barral | Publicado em: 28.05.2005 | Visualizaes: 1083 Primeiramente crie no servidor um arquivo com o nome contador.dat <html><head> <title>Contador de Visistas</title> </head> <body> <? //Abre o arquivo contador.dat em modo de leitura $fp = fopen("contador.dat","r"); //obtm a linha do arquivo e coloca seu conteudo em $numero //foi usado 255 pra ter certeza q ele vai pegar o ultimo numero registrado $numero = fgets($fp,255); //incremeta o numero da variavel tbm o de visitas $numero++; //exibe na tela o numero q o visitante no momento echo "Voc o visitante numero: $numero ."; //fecha o arquivo fclose($fp); //abre novamente o arquivo agora em modo de gravao e // acrescenta em 1 (um) o numero de visitas $fp = fopen("contador.dat","w+"); //grava a variavel $numero no arquivo fwrite($fp, $numero); //fecha o arquivo fclose($fp); ?> </body> </html> Bom isso pessoal o cdigo est todo comentado explicando parte por parte Modos de abertura de um arquivo:

- 43 -

Instalao de Servidor WEB em Ambiente Windows


r - somente leitura r+ - leitura e gravao a partir do inicio do arquivo w - somente gravao onde o conteudo do arquivo ser totalmente apagado w+ - leitura e gravao onde o conteudo do arquivo ser totalmente apagado a - somente gravao, no apaga o conteudo a+ - leitura e gravao, no apaga o conteudo

- 44 -

También podría gustarte