Você está na página 1de 15

PHP: CONCEITOS ESSENCIAIS PARA IMPLEMENTAO DE APLICAES WEB

Leonardo L. AlvesA, Fabricio R. BittencoutB


FUNCESI Fundao Comunitria de Ensino Superior de Itabira FATEC Faculdade Itabirana de Desenvolvimento das Cincias e Tecnologias Emails: leonardo@lacerda.eti.br, fabricio.roulin@funcesi.br

Resumo
Este trabalho objetiva proporcionar aos graduandos do curso de Sistemas de Informao o conhecimento necessrio para otimizar pesquisas e aprendizado sobre o desenvolvimento de aplicaes web, atravs da linguagem de programao PHP, a qual se caracteriza como a alternativa open-source dentre as linguagens interpretadas. So apresentados a estrutura de um programa PHP e os tipos de dados suportados pela linguagem e discutidos os principais operadores e estruturas de controle. explicado ainda o funcionamento de um servidor www e como se pode programar suas respostas atravs do desenvolvimento de aplicaes remotas embutidas em arquivos HTML.

1.Introduo
Em conseqncia da expanso da Internet, interconexo entre diferentes ambientes de redes e reaproveitamento de mquinas e sistemas operacionais antigos, a arquitetura web tem adquirido grande relevncia e criado demandas e desafios para o desenvolvimento de programas em Internet e intranets das corporaes. As intranets, por sua vez, possuem conceitos idnticos aos da Internet, se utilizando de ferramentas e protocolos de comunicao similares. O seu escopo, porm, diferentemente do que ocorre na Internet, permitir a troca de dados apenas entre computadores de uma mesma rede local, normalmente, mesmo que esteja ligada a rede pblica de computadores, a Internet [6]. A camada multimdia da Internet a WWW World Wide Web ou simplesmente Web, a qual fornecida pelo protocolo HTTP Hypertext Transfer Protocol ou Protocolo de Transferncia de Hipertexto e permite a troca de documentos, imagens e outros recursos web de forma transparente em relao ao computador-servidor [1]. Um recurso web acessado por um programa-cliente, isto , utilizado pelo usurio. O programa-cliente, normalmente conhecido como navegador ou browser (folheador), acessa os recursos atravs de um esquema de endereamento uniforme conhecido como URL Uniform Resource Locator no formato protocolo://endereo_ip:porta/diretorios/arquivo [11].
Bacharelando em Sistemas de Informao pela FATEC/Funcesi. Mestrando pelo PPGEE - Programa de Ps Graduao em Engenharia Eltrica da PUC-MG, Professor da FATEC e FACCI na FUNCESI.
B A

O servidor responsvel por servir os recursos web e o faz simplesmente enviando os arquivos disponveis ao programa-cliente, logo que recebe uma requisio, assim como aponta a figura 1.1. Existem porm duas classes de aplicaes web. A primeira delas chamada de client-side, ou local, sendo executada no computador-cliente, responsvel pela requisio de um recurso web. Na figura 1.1 observa-se um processo client-side sendo executado sem qualquer conexo com sistemas computacionais externos.

Figura 1.1: Programa client-side A segunda classe de aplicaes web so executadas pelo servidor para o qual foi realizada uma requisio de recurso www. Nesse caso, o recurso denominado recurso-dinmico, e o servidor totalmente responsvel pelo processamento de dados e o redirecionamento da sada para o computador-cliente, o qual por sua vez, conforme demonstrado na figura 1.2, no tem acesso aos processos e dados de origem.

Figura 1.2: Programa server-side Inmeros ambientes computacionais foram criados para possibilitar o desenvolvimento de programas dessa segunda classe ou server-side, normalmente em linguagens de programao existentes e interpretadas no momento da requisio. Dentre os mais populares foram

consideradas o VB-Script e ASP.NET, linguagens de programao restritas arquitetura Microsoft e normalmente implementadas em Visual Basic ou C# [9]; Java Servlets Pages (JSP), criada pela Sun, baseada na linguagem Java e independente de sistema operacional; e PHP, a qual a nica a contar com um interpretador open-source gratuito e com cdigofonte aberto suportado por variados sistemas operacionais e servidores http. O PHP, objeto deste trabalho, foi um conjunto de aplicaes desenvolvidas em linguagem Perl, por Rasmus Lerdof em 1995, com o simples propsito de criar interaes entre usurios de Internet e sites nos quais era instalado. Somente aps 1997, atravs da contribuio de outras pessoas ao projeto, PHP tornou-se uma linguagem de programao, chegando verso 4 em 2000 com todos os atributos abordados nesse documento, e presente em mais de 20% dos domnios pblicos na Internet [8]. O conhecimento prvio da linguagem C++ desejvel, mas o presente artigo deve servir como introduo PHP mesmo queles que no saibam programar nessa linguagem. Este tutorial est organizado sobre a seguinte estrutura: no tem 2 exposto o que pode ser feito em PHP, os principais formatos de sada de dados e o suporte a protocolos de rede e extenses. No tem 3 apresentada a estrutura de um script e os recursos essenciais para a construo de aplicaes web, como os tipos de dados usados, converses de tipos, uso de variveis, principais operadores e estruturas de controle, criao de funes e entrada e sada de dados.

2.O que pode ser feito em PHP


Por ser uma linguagem interpretada de script no servidor www, criada exclusivamente para a Internet, PHP tem atributos que flexibilizam o desenvolvimento de pginas dinmicas, com sada de dados em formatos como pgina de marcao HTML, animao em Flash, imagens, textos formatados em PDF e RTF, geradas dinamicamente atravs de informaes recebidas do computador-cliente, armazenados em disco ou existentes em um banco-de-dados.

Figura 2.1: Arquitetura PHP 4

Entre a aplicao e o programa-cliente, um navegador normalmente, alm da tradicional troca de informaes por meio de formulrios HTML, h tambm o envio e recebimento de cookiesC e o recebimento de parmetros na prpria URL em tempo de requisio [11]. Na figura 2.1 observamos a existncia de cinco camadas em um servidor de scripts web PHP. A primeira, web server, a responsvel por servir recursos web reais diretamente do disco rgido ou virtuais aps processamento de um script. A camada SAPI fornece a interface entre o interpretador e o servidor web. A terceira camada, denominada PHP Core, o ncleo onde so processados os scripts, a qual, ligada Zend Core, quarta camada, abre processos de extenses atravs de uma API, a quinta camada, de extenses externas ao PHP e at mesmo ao computador onde est instalado. A integrao a sistemas gerenciadores de banco-de-dados (SGBD) facilitada por rotinas existentes nas bibliotecas padres do interpretador, executadas na camada Zend Core via API, com suporte a linguagem SQL e suporte especial aos SGBDs Oracle, MySQL, MiniSQL, MSQL, SQL Server, Interbase, entre outros. Adicionalmente, pela organizao distribuda e multiplataforma da Internet, o suporte a outros protocolos tambm oferecido atravs da quinta camada, tornando um programa em PHP capaz de se conectar a servidores de envio e recebimento de e-mails, de bate-papo, www, ftp e outros [8].

3.Estrutura de um programa PHP


Um script PHP um conjunto de uma ou mais instrues seguidas por ; em um ou mais blocos delimitados por <?, indicando o incio, e ?>, o trmino do bloco.

3.1Um script PHP No exemplo 3.1.1 apresentado um cdigo PHP inserido em um arquivo HTML. A requisio deste arquivo, o qual obrigatoriamente deve possuir a extenso .php, faz com que o mesmo seja processado pelo interpretador PHP e resulte o recurso HTML do exemplo 3.1.2, enviado ao programa-cliente, como explicado no tem 2. Exemplo 3.1.1: Script PHP embutido em cdigo HTML (exemplo.php) <html> <body> <h1>Contedo em HTML</h1> <p>1 linha<br> 2 linha<br> </p> <h1>Contedo em HTML gerado pelo PHP</h1> <p> <? // Incio do PHP // Comentrio:
C

Pequeno arquivo texto armazenado no computador-cliente e acessado remotamente pela aplicao que o gravou.

// De 1 at 2 contados em $num faa o comando em seguida for ($num = 1; $num <= 2; $num++) echo $num . linha<br>\n; /* Comentrio: Imprime o valor de $num, o texto linha e uma quebra de linha */ // Fim do PHP ?> </p> </body> </html> Os comentrios presentes no script podem ter uma linha, quando iniciados por // ou tamanho intedeterminado quando iniciados por /* e finalizados por */. Ambos so teis para a documentao do cdigo e no so exibidos no recurso web aps o processamento. Exemplo 3.1.2: Recurso HTML gerado aps o arquivo exemplo.php ser processado Contedo em HTML 1 linha 2 linha Contedo em HTML gerado pelo PHP 1 linha 2 linha O resultado presente no exemplo 3.1.2 seria exibido no programa-cliente sem diferena entre o trecho integralmente escrito em HTML e o produto do script processado.

3.2Tipos de dados A linguagem suporta oito tipos primitivos de dados, compostos por quatro tipos bsicos:

boolean, para true (verdadeiro) ou false (falso); integer ou int, nmeros inteiros; float, nmero com ponto-flutuante; string, para um ou mais caracteres.

Dois tipos compostos:

Dois tipos especiais:

Um nono tipo mixed usado em declaraes de prottipos, determinando que mais de um tipo de retorno esperado ou mais de um tipo de parmetro pode ser usado. A tipagem de identificadores em PHP realizada dinamicamente, sendo possvel atribuir qualquer valor a variveis previamente alocadas, sendo o interpretador PHP responsvel pelas alteraes, at mesmo em situaes de overflow. Apenas valores do tipo string so identificados de forma diferenciada, devendo ser agrupados entre aspas () ou apstrofos ().

Transformao de tipos Conceitualmente, h pelo menos duas formas de converso de variveis para tipos diferentes. A primeira delas, chamada coero, uma converso de tipo implcita iniciada pelo interpretador [12]. A segunda, chamada cast, consiste em converses explcitas de tipo solicitadas pelo programador. A coero livre presente na PHP tambm dificulta a identificao de erros, mas favorece o trabalho de programao, sendo o programador dispensado de se preocupar com as converses, conforme demonstrado no exemplo 3.2.1. Exemplo 3.2.1: Coero livre <? $a = 2 + 15 palavras; /* a varivel $a ter o valor 17 */ ?> O typecast, como demonstrado no exemplo 3.2.2 e igualmente ao da linguagem C++, aplicado atravs da escrita do tipo antes de uma atribuio, forando a converso do tipo do valor atribuido.

array, vetor multidimensional abstrato, atravs do qual se pode construir listas, filas, pilhas, dicionrios e outras construes similares; objeto, o qual sempre carrega a instncia de um objeto.

resource, existente a partir da verso 4 da linguagem, usada para referenciar recursos externos; null, o qual atribuido a toda varivel apagada, no carregada ou aps uma atribuio da constante null.

Exemplo 3.2.2: Typecast <? $a = 45.3; /* varivel $a recebe 45,3 */ $a = (int) $a; /* varivel $a recebe 45 */ ?> No exemplo 3.2.2, a varivel $a convertida para o tipo inteiro, mas para o mesmo trabalho, adicionalmente, h uma funo chamada settype, a qual poderia ser usada como no exemplo 3.2.3. Exemplo 3.2.3: Funo settype <? settype($a,integer); ?>

Identificadores As variveis, as quais no precisam ser declaradas, so alocadas simplesmente atravs da atribuio de um valor ao identificador ainda no usado, sempre antecedido pelo smbolo $. As constantes, todavia, possuem um comportamento diferenciado, devendo ser declaradas pela funo define, e sendo referenciadas sem o $, assim como no exemplo 3.2.4. Exemplo 3.2.4: Atribuio e uso de constante <? define(pi,3.1415); /* pi deve estar entre aspas, mas seu valor numrico no */ $circunferencia = 2 * pi * $raio; /* j como constante, pi usado sem aspas e $ */ ?>

3.3Operadores Em PHP h inmeros operadores no tradicionais em outras linguagens de programao, como operadores de controle de erro, execuo e de fuso de vetores. No presente tutorial sero tratados apenas os operadores com funes mais comuns.

Aritmticos As operaes de adio, subtrao, diviso, multiplicao e mdulo so executadas atravs dos smbolos +, -, /, * e %, respectivamente, como no exemplo 3.3.1. Exemplo 3.3.1: Operadores em expresses aritmticas <?

$c = $a + $b; /* soma */ $c = $a - $b; /* subtrao */ $c = $a / $b; /* quociente real */ $c = $a * $b; /* produto */ $c = $a % $b; /* resto da diviso */ /* alterao de ordem de precedncia atravs dos parnteses A expresso ir somar, multiplicar e encontrar o resto da diviso, nessa ordem. */ $c = ($a + $b) * $d % 4; ?>

Relacionais As comparaes entre operandos quaisquer so idnticas s possveis em C++, realizadas pelos operadores >, >=, ==, !=, <=, <; respectivamente maior que, maior ou igual a, igual a, diferente de, menor ou igual a, menor que. O retorno das expresses ser sempre TRUE ou diferente de 0 quando verdadeiras, ou FALSE ou 0, quando falsas.

Concatenao A ciso de cadeias de caracteres se d pelo operador . (ponto) ou .= (ponto e igual), como no exemplo 3.3.2. Exemplo 3.3.2: Concatenao de strings <? $c = Linguagem . PHP; /* retorna Linguagem PHP */ $c = Funcesi; /* Atribui Funcesi varivel $c */ $c .= /Itabira; /* retorna Funcesi/Itabira e atribui varivel $c */ ?>

Atribuio A atribuio realizada a identificadores com o operador =, podendo ocorrer em qualquer ponto do programa ou mesmo dentro de outras estruturas. Exemplo 3.3.3: Atribuio simples <?

$c = 4; /* atribui o inteiro 4 */ $c = 2.5; /* atribui o real 2,5 */ $c = texto; /* atribui a string texto */ ?> Em funo de as variveis serem tipadas dinamicamente, todas as atribuies do exemplo 3.3.3 so possveis, para o mesmo identificador. Outros operadores de atribuio so +=, -=, *=, /=, %=, .=, para atribuir recursivamente, ou seja, atribuir ao identificador esquerdo o seu contedo atual somando com o prximo, subtraindo, multiplicando, dividindo por, obtendo o resto da diviso por, ou concatenando, segundo o operador que anteceder o smbolo =. Algumas dessas operaes so mostradas no exemplo 3.3.4. Exemplo 3.3.4: Atribuies combinadas <? $cont += 1; // Corresponde a $cont = $cont + 1 $multiplo *= 3; // Corresponde a $multiplo = $multiplo * 3 ?>

Lgicos Os operadores lgicos so and, &&, or, ||, xor e !, exibidos no exemplo 3.3.5. Exemplo 3.3.5: Operadores lgicos <? $a and $b /* verdadeiro se ambos, $a e $b, so verdadeiros */ $a && $b /* idem */ $a or $b /* verdadeiro se $a ou $b verdadeiro, ou se ambos so verdadeiros */ $a || $b /* idem */ $a xor $b /* verdadeiro se $a ou $b verdadeiro, mas no os dois so verdadeiros */ !$a /* verdadeiro quando $a no for verdadeiro */ ?>

Incremento e decremento Os populares operadores de incremento e decremento da linguagem C, ++ e --, tambm foram herdados pelo PHP, com a mesma sintaxe, resultando em um incremento de 1 ou decremento de 1, com ordem de execuo priorizada quando pr-fixados. O exemplo 3.3.6 apresenta demonstraes.

0 Exemplo 3.3.6: Incremento e decremento <? $a = $cont++; /* $a recebe o valor de $cont, e $cont incrementada */ $a = ++$cont; /* $cont incrementada e ento $a recebe o novo valor de $cont */ $b = $tarefa--; /* $b recebe o valor de $tarefa, e $tarefa decrementada */ $b = --$tarefa; /* $tarefa decrementada e ento $b recebe o novo valor de $tarefa */ ?>

3.4Estruturas de controle As estruturas de controle foram mantidas inalteradas em relao s do C/C++, as quais respeitam todas as regras e excees do padro ANSI C.

Seleo Duas estruturas de seleo so oferecidas. O tradicional if e a estrutura switch-case. Exemplo 3.4.1: Estrutura condicional if <? if ($i == 0) print 'Minha varivel igual a zero'; elseif ($i == 1) print 'Minha varivel igual a um'; elseif ($i == 2) print 'Minha varivel igual a dois'; else { print 'Minha varivel diferente de '; /* bloco demarcado */ print '0, 1 e 2'; /* por chaves { e } */ } ?> Apresentada no exemplo 3.4.1, a estrutura if sempre avalia sua expresso ($i == 1, por exemplo) como booleano. Em caso de verdadeiro, as instrues seguintes so executadas; caso falso, instruo elseif ou else so procuradas. interessante notar, entretanto, que falso em PHP pode ser o booleano false, o inteiro 0, o real 0.0, uma string vazia ou 0, um null, uma varivel indefinida ou um array ou objeto sem elementos. Qualquer valor diferente dos citados, inclusive o booleano true, equivale ao estado verdadeiro [8]. A estrutura switch-case, com a mesma funo, possui sintaxe como no exemplo 3.4.2. Exemplo 3.4.2: Estrutura condicional switch <?

1 switch ($i) { case 0: print 'Minha varivel igual a zero'; break; case 1: print 'Minha varivel igual a um'; break; case 2: print 'Minha varivel igual a dois'; break; else: print 'Minha varivel diferente de '; print '0, 1 e 2'; break; /* break fora o trmino do bloco switch */ } ?>

Repetio H quatro estruturas de repetio mais populares em PHP: while, do-while, for e foreach. O while um lao de repetio lgico, o qual executado enquanto sua condio verdadeira, como demonstrado no exemplo 3.4.3. Exemplo 3.4.3: Exemplo de uma repetio while <? $i = 1; /* $i inicializado com valor 1 */ while ($i <=10) /* enquanto $i for menor ou igual a 10 faa */ { print Linha $i++\n; /* imprima o valor de $i. Incremente em seguida. */ echo <br>; } /* imprime uma quebra de linha em HTML */ ?> O do-while, diferentemente da estrutura while, executa pelo menos uma iterao, obrigatoriamente, realizando o teste pela primeira vez ao fim da mesma, e repetindo enquanto a condio for verdadeira. O exemplo 3.4.4 demonstra sua construo. Exemplo 3.4.4: Exemplo de uma repetio do ... while <? $i = 0; // $i recebe o valor zero do { // inicia o bloco do { ... } while print Linha ++$i\n; // incrementa $i e imprime o texto echo <br>; // imprime uma quebra de linha em HTML } while ($i < 10); // faz outra iterao enquanto for verdadeiro ?> O for, por sua vez, possui trs parmetros opcionais: um de inicializao, outro para a condio e o terceiro para execuo antes de cada nova iterao. O cdigo ilustrado no exemplo 3.4.5.

2 Exemplo 3.4.5: Exemplo de uma repetio for <? /* $i = 1 executada no incio; $i <= 10 avaliada no incio de cada iterao; $i++ avaliada ao fim de cada iterao */ for ($i = 1; $i <= 10; $i++) { print Linha $i\n; /* imprime o texto Linha, a varivel $i e quebra a linha */ echo <br>; /* imprime quebra de linha em HTML */ } ?> A repetio foreach, finalmente, usada exclusivamente para o trabalho com vetores, objetivando copiar chaves e valores de uma posio do vetor, at o seu fim, para outra varivel. Este recurso til particularmente em PHP quando se tem um vetor de dimenso varivel, suportado apenas a partir de sua verso 4 e demonstrado no exemplo 3.4.6. Exemplo 3.4.6: Exemplo de uma repetio foreach <? $vetor = array (1,7,18,44,99); /* cria e carrega $vetor */ /* copia o primeiro valor de $vetor para $parte */ foreach ($vetor as $parte) { echo Valor: $parte \n; /* imprime $parte e retorna at o fim de $vetor*/ } ?>

3.5Funes e procedimentos Por recursos na web serem arquivos isolados, muitas vezes possvel criar programas ou pginas dinmicas simples, isto , sem o uso de funes ou procedimentos. Entretanto, o suporte a funes muito til na formao de bibliotecas e para a passagem segura de parmetros dentro de um recurso. Funes so declaradas como no exemplo 3.5.1. Exemplo 3.5.1: Declarao de funo <? function nomedafunc($aluno, $disciplina = 'Compiladores') { echo "O aluno " . $aluno . " estuda " . $disciplina; return "valor de retorno"; } ?> Com suporte a parmetros padronizados, como o caso do parmetro $disciplina, ilustrado em 3.5.1, sempre ao final, e dispensa de declarao do tipo do retorno, dada a coero livre presente na linguagem, seu funcionamento idntico ao de funes ou

3 procedimentos em outras linguagens e o retorno pode ocorrer dentro de estruturas, sadas, parmetros de outras funes e mesmo em expresses aritmticas, por exemplo. Ainda, por sua ortogonalidade superior de linguagens de programao tradicionais, qualquer tipo de dado pode ser retornado de uma funo, inclusive vetores e registros.

3.6Entrada e sada A sada, possvel atravs das funes echo e print, assim como no exemplo 3.1.1, redirecionada para o recurso virtual acessado pelo programa-cliente, podendo ser som, imagem, animao, filme, texto ou outro formato. A entrada, seja atravs de formulrio, presente em URL ou at mesmo em um cookie, realizada de maneira transparente pelo interpretador PHP, que a converte em uma varivel global, a qual pode ser alterada sem qualquer prejuzo de tempo, nem a possibilidade de causar danos ao programa responsvel pela requisio ou envio de dados. A independncia entre os mecanismos de entrada e o programa criam condies satisfatrias para um rpido desenvolvimento, causando entretanto possveis problemas de segurana e privacidade dos dados trocados, o que, aliado ortogonalidade da linguagem e a coero livre, garante uma reduo considervel no nvel de segurana, possibilitando a execuo de instrues prejudiciais e causando erros na transferncia de dados de tipo incorreto a servidores de banco-de-dados e outras aplicaes de mais baixo nvel.

4.Concluso
Pela extenso da linguagem de programao PHP, variantes de verso, diferenciais entre suas estruturas e as de outras linguagens de programao populares, tarefa complexa concluir um estudo sobre suas caractersticas. conclusivo, porm, que o sucesso do PHP se deve a facilidade de escrita, simplificao da implementao do cdigo, alto grau de ortogonalidade, livre coero o que dispensa o programador dos constantes tratamentos de entradas e sadas e converso de tipos (texto para numrico, e vice-versa), muito comuns no ambiente web , integrao com linguagens de programao e ou formatao, como o prprio HTML, e especialmente o suporte s mdias e aos servios mais populares na Internet. Os aspectos custo, minimizado pela distribuio gratuita dos pacotes, cdigo-livre e portabilidade entre as principais arquiteturas de servidores web usadas no mundo, influenciam diretamente em sua escolha por desenvolvedores e administradores de pginas. Todavia, preocupante em toda aplicao onde se obtm informaes digitadas diretamente por usurios on-line, o controle das entradas, quebras em programas e abertura a invases possvel com facilidade quando o desenvolvedor atribui baixa relevncia aos testes e avaliaes da segurana.

4 Por ser uma linguagem de programao exclusivamente interpretada, perde em desempenho para as aplicaes CGI compiladas em C, as mais populares, porm garantindo maior facilidade de atualizao e reutilizao de cdigo entre os mdulos ou arquivos do programa, quando em processo de execuo/interpretao. Mesmo enfretando a concorrncia de novas tecnologias, sua popularidade garantida por desenvolvedores de extenses, bibliotecas e aplicaes open-source para o PHP. Alm disso, por sua incluso em pacotes de distribuio do sistema operacional Linux e servidor web Apache, ambos muito populares na Internet e nos quais o PHP possui melhor desempenho e menor dependncia de sistemas adicionais, h resistncia em adotar outras ferramentas similares e com menor alcance. A participao do interpretador PHP no desenvolvimento de aplicaes tem se mostrado vantajosa em inmeros aspectos, a tornando ferramenta essencial para qualquer servidor http e eficaz para implementao de aplicaes web.

5.Referncias bibliogrficas
[1]AMOR, Daniel. A revoluo do e-business: vivendo e aprendendo em um mundo interconectado. So Paulo: Makron Books, 2000. 606 p. [2]BAKKEN, Stig Sther. Introduction to PHP. Internet < www . zend . com / zend / art / intro . php>. 17/Abr/2000. [3]BARRETO, Maurcio V.S.; et al. Aplicaes web com PHP. Internet: <www . vivas . com . br>, Jun/2000. 104 p. [4]BRUFAU, Marc; CASALS, Xavier; MAS, David. Conceptes avanats de sistemes operatius. Distribuci daplicacions mitjanant web. (apunts de lassignatura en format transparncia). Departament dArquitectura de Computadors. 2001. [5]COX JNIOR, Fred. Programando para web com PHP/MySQL. Mar/2001. 2. ed. 72 p. [6]GRALLA, Preston. Como funcionam as intranets. Editora Quark, So Paulo, 1996. 206 p. [7]HALL, Marty. Core Servlets and JavaServer Pages. Sun Microsystems Press. Internet: <javaboutique . internet . com / tutorials / JSP>. [8]LERDOF, Rasmus et al. PHP Manual. Internet: <www . php . net / docs . php>, 08/Out/2002. [9]PAULI, Guinther de Bitencourt. ASP.NET com Delphi: criao de web services no Delphi for .NET Preview. Revista Clube Delphi. Ed. 37. Ano IV.

5 [10]REILLY, George V. ASP best practices. Microsoft Corporation. Internet: <support . microsoft . com / support / activeserver / AspBestPractices . ppt>, 06/03/2003. [11]ROSA, Csar Augusto Salabert. Internet: histria, conceitos e servios. So Paulo: rica, 1998. [12]SEBESTA, Robert W. Conceitos de Linguagens de Programao. 4. ed. Porto Alegre: Bookman, 2000. 624 p.

Você também pode gostar