Академический Документы
Профессиональный Документы
Культура Документы
1 HTML Formulrios
A linguagem HTML tambm permite que o cliente (navegador) interaja com o servidor, preenchendo campos, clicando em botes e passando informaes. Estas famosas caixas de texto e botes que podemos encontrar em muitas pginas web so chamadas de formulrios. So muito utilizados para realizar buscas ou tambm para introduzir dados pessoais, por exemplo, em sites de comrcio eletrnico. Os dados que o usurio introduz nestes campos so enviados ao correio eletrnico do administrador do formulrio ou tambm, em um programa que se encarrega de process-lo automaticamente. Usando HTML podemos unicamente enviar o formulrio a um correio eletrnico. Se quisermos processar o formulrio mediante um programa, a coisa pode ser um pouco mais complexa, j que teremos que empregar outras linguagens mais sofisticadas.
A forma na qual se expressa a localizao do arquivo que contm o scripts a mesma que a vista para os links.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Method: Este atributo se encarrega de especificar a forma na qual o formulrio enviado. Os dois valores possveis que este atributo pode tomar so post e get. No mtodo get os dados entrados fazem parte do URL associado consulta enviado para o servidor e suporta at 128 caracteres. J no mtodo post, os dados so enviados de forma separada da URL, ou seja, os dados fazem parte do corpo da mensagem enviada para o servidor e transfere grande quantidade de dados. Desta forma, na prtica o mtodo post mais utilizado. Enctype: Utiliza-se para indicar a forma na qual viajar a informao que for mandada pelo formulrio. No caso mais corrente, enviar o formulrio por correio eletrnico, o valor deste atributo deve ser "text/plain". Assim, conseguimos que o contedo do formulrio seja enviado como texto plano dentro do e-mail. Se quisermos que o formulrio se processe automaticamente por um script, geralmente no utilizaremos este atributo, de forma que tome seu valor padro, ou seja, no incluiremos enctype dentro da tag <form>. Exemplo de tag <form> completa: Assim, para o caso mais habitual - o envio do formulrio por correio - a tag de criao do formulrio ter o seguinte aspecto:
<form action=mailto:endereo@correio.com (ou o script do servidor) method=post enctype=text/plain> Entre esta tag e seu fechamento, colocaremos o resto de tags que daro forma ao nosso formulrio, as quais sero vistas nos prximos captulos.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
A tag da seguinte forma: <input type=text name=cpf> Deste modo expressamos nosso desejo de criar uma caixa de texto cujo contedo ser chamado cpf (por exemplo). Ele associa o valor digitado na caixa de entrada com um nome de varivel cpf. Por exemplo, quando voc for receber os dados no servidor, j, processados, ir vir o cpf = valor digitado pelo usurio. O aspecto deste tipo de caixas conhecido, como pode ser visto aqui:
O nome do elemento do formulrio de grande importncia para poder identific-lo em nosso script de processamento ou no e-mail recebido. Da mesma forma, importante indicar o atributo type, j que, como veremos, existem outras modalidades de formulrio que usam esta mesma tag. O emprego destas caixas est fundamentalmente destinado tomada de dados breves: palavras ou conjuntos de palavras de longitude relativamente curta. Veremos mais adiante que existe outra forma de tomar textos mais longos a partir de outra tag. Alm destes dois atributos, essenciais para o correto funcionamento de nossa tag, existem outra srie de atributos que podem ser de utilidade, mas que no so imprescindveis: size: Define o tamanho da caixa em nmero de caracteres. Se ao escrever o usurio chega ao final da caixa, o texto ir desfilando medida que se escreve fazendo desaparecer a parte de texto que fica esquerda. maxlength: Indica o tamanho mximo do texto que pode ser tomado pelo formulrio. importante no confund-lo com o atributo size. Enquanto o primeiro define o tamanho aparente da caixa de texto, maxlength indica o tamanho mximo real do texto que pode ser escrito. Podemos ter uma caixa de texto com um tamanho aparente (size) que menor do que o tamanho mximo (maxlength). O que ocorrer neste caso que, ao escrever, o texto ir desfilando dentro da caixa at que cheguemos ao seu tamanho mximo definido por maxlength, momento no qual ser impossvel continuar escrevendo. value: Em alguns casos pode ser interessante atribuir um valor definido ao campo em questo. Isto pode ajudar ao usurio a preencher mais rapidamente o formulrio ou a dar alguma idia sobre a natureza de dados que se requerem. Este valor inicial do campo pode ser expresso mediante o atributo value.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Observao: estamos obrigados a utilizar a tag <form>. Para que fique mais claro este contedo, ressaltamos: Quando queremos utilizar em qualquer situao elementos de formulrio devemos escrev-los sempre entre as tags <form> e </form>. Caso contrrio, os elementos sero vistos perfeitamente no Internet Explorer, mas no nos demais navegadores.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
A tag fica portanto, desta forma: <textarea name=comentario rows=10 cols=40> </textarea>
O resultado o seguinte:
Mesmo assim, possvel definir o contedo do campo. Para isso, no usaremos o atributo value e sim, que escreveremos dentro da etiqueta o contedo que lhe desejamos atribuir. Vejamos: <textarea name=comentario rows=10 cols=40> Escreva seu comentrio </textarea> Ter como resultado:
Efetivamente, os textos so uma maneira muito prtica de solicitar informaes aos usurios. Porm, em muitos casos, os textos so dificilmente manipulados em scripts ou tambm pode ser que seu contedo no se ajuste ao tipo de informao que requeremos. por isso que, em determinados casos, pode ser mais efetivo propor uma escolha ao usurio a partir da exposio de uma srie de opes. Este o caso de, por exemplo, oferecer uma lista de pases, o tipo de carto de crdito para um pagamento, etc. Estes tipos de opes podem ser expressadas de diferentes formas.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
O resultado o seguinte:
Esta estrutura pode ser vista modificada principalmente a partir de outros dois atributos: size: Indica o nmero de valores mostrados da lista. O resto pode ser visto por meio da barra lateral de deslocamento. multiple: Permite a seleo de mais vrios elementos da lista. A escolha de mais de um elemento se faz como com o explorador de Windows, a partir das teclas ctrl ou shift. Este atributo se expressa sem valor algum, ou seja, no se utiliza com o igual: simplesmente se coloca para conseguir o efeito, ou no se coloca se quisermos uma lista desdobrvel comum.
Vejamos qual o efeito produzido por estes dois atributos mudando a linha: <select name=estacao> Por: <select name=estacao size=3 multiple>
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
A tag <option> ainda pode ser precisada por meio de outros atributos: selected: Da mesma forma que multiple, este atributo no toma nenhum valor seno que simplesmente indica que a opo que apresenta est escolhida por padro. Assim, se mudamos a linha do cdigo anterior: <option>Outono</option>. Por: <option selected>Outono</option>. O resultado ser:
value: Define o valor da opo que ser enviada ao script ou ao correio eletrnico se o usurio escolhe essa opo. Este atributo pode ser muito til se o formulrio for enviado a um script visto que a cada opo se pode associar um nmero ou letra, o qual torna-se mais facilmente manipulvel que uma palavra ou texto. Poderamos assim escrever linhas do tipo: <option value="1">Primavera</option>. Deste modo, se o usurio escolhe primavera, o que chegar ao script (ou ao correio) uma varivel chamada estacao que ter com valor 1. No correio eletrnico receberamos: estacao=1.
Observaes: Temos de observar que a tag <input type="radio"> somente coloca o campo para clicar na pgina. Os textos que aparecem ao lado, assim como as quebras de linha, colocamos com o correspondente texto no cdigo da pgina e com as tags HTML que necessitarmos. O resultado o seguinte:
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Como podemos ver, cada uma das opes se atribui uma tag <input> dentro da qual atribumos o mesmo nome (name) para todas as opes e um valor (value) distinto. Se o usurio escolhe supostamente Outono, receberemos em nosso correio uma linha tal como esta: estao=3. Cabe assinalar que possvel pr-selecionar por padro uma das opes. Isto se pode conseguir por meio do atributo checked: <input type="radio" name="estacao" value="2" checked> Vero. Vejamos o efeito:
A nica diferena fundamental o valor adotado pelo atributo type. Da mesma forma que para os botes de radio, podemos ativar a caixa por meio do atributo checked.
<input type="submit" name="env" value="Enviar"> Com este cdigo geramos um boto como este:
Como pode ser visto, somente temos de especificar que se trata de um boto de envio (type=submit) e temos de definir a mensagem do boto por meio do atributo value.
O uso mais frequente de um boto na programao no cliente. Utilizando linguagens como Javascript podemos definir aes a tomar quando um visitante clicar o boto de uma pgina web.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
<form action="grava.php" method="post"> Nome <input type="text" name="nome" size="30" maxlength="100"><br> E-mail <input type="text" name="email" size="25" maxlength="100" value="@"><br> Cidade <input type="text" name="cidade" size="20" maxlength="60"><br> Sexo <br> <input type="radio" name="sexo" value="Masculino" checked> Homem <br> <input type="radio" name="sexo" value="Feminino"> Mulher <br> <br> Frequncia das viagens <br> <select name="utilizao"> <option value="1">Vrias vezes por dia <option value="2">Uma vez por dia <option value="3">Vrias vezes por semana <option value="4">vrias vezes por ms </select> <br><br> Comentrios sobre sua satisfao pessoal <br> <textarea cols="30" rows="7" name="comentrios"></textarea> <br><br> <input type="checkbox" name="receber_info" checked> Desejo receber notificao das novidades nas linhas de nibus. <br><br> <input type="submit" value="Enviar formulrio"> <br><br> <input type="Reset" value="Apagar tudo"> </form>
2 Linguagens Scripts
A programao de sites normalmente realizada atravs de linguagens scripts. Estas linguagens so embutidas dentro do HTML. So linguagens que permitem criar sites dinmicos, possibilitando uma interao com o usurio atravs de formulrios, parmetros da URL e links. O que diferencia uma linguagem script de um CGI escrito em C ou Perl que seu cdigo embutido no prprio HTML, enquanto no outro caso necessrio que o script CGI gere todo o cdigo HTML, ou leia de outro arquivo.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Uma linguagem script pode ser usada no lado do cliente (navegado/browser) ou do servidor, como apresentado a seguir.
3 Javascript
Javascript uma linguagem de programao utilizada para criar pequenos programinhas encarregados de realizar aes dentro de uma pgina web. Com Javascript podemos criar efeitos especiais nas pginas e definir interatividades com o usurio. O navegador do cliente o encarregado de interpretar as instrues Javascript e executlas para realizar estes efeitos e interatividades, de modo que o maior recurso, e talvez o nico, com que conta esta linguagem o prprio navegador. Javascript uma linguagem de programao bastante simples para fazer as coisas com rapidez. Inclusive as pessoas que no tenham uma experincia prvia na programao podero aprender esta linguagem com facilidade e utiliz-la em toda sua potncia com somente um pouco de prtica.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Entre as aes tpicas que se podem realizar em Javascript temos duas vertentes. Por um lado, os efeitos especiais sobre pginas web, para criar contedos dinmicos e elementos da pgina que tenham movimento, mudam de cor ou qualquer outro dinamismo. Por outro, javascript nos permite executar instrues como resposta s aes do usurio, com o qual podemos criar pginas interativas com programas como calculadoras, agendas, tabelas de clculo e cadastros dinmicos. importante deixar claro que Javascript no tem nada a ver com Java, salvo em suas origens. Atualmente, so produtos totalmente distintos e guardam entre si somente uma pequena relao sinttica. Algumas diferenas entre estas duas linguagens so as seguintes: Compilador: para programar em Java necessitamos um kit de desenvolvimento e um compilador. Entretanto, Javascript no uma linguagem que necessite que seus programas se compilem, pois so interpretados por parte do navegador quando este l a pgina. Orientado a objetos: Java uma linguagem de programao orientada a objetos. Javascript no orientado a objetos, isto quer dizer que poderemos programar sem necessidade de criar classes. Propsito: Java muito mais potente que Javascript, pois Java uma linguagem de propsito geral, que se pode fazer aplicaes dos mais variados tipos. Com Javascript somente podemos escrever programas para que se executem em pginas web. Estruturas fortes: Java uma linguagem de programao fortemente tipada, isto quer dizer que ao declarar uma varivel teremos que indicar seu tipo e no poder mudar de um tipo a outro automaticamente. Por sua vez, Javascript no tem esta caracterstica, e podemos colocar em uma varivel a informao que desejarmos, independentemente do tipo desta. Outras caractersticas: Como vemos Java muito mais complexo, mas tambm, mais potente, robusto e seguro. Tem mais funcionalidades que Javascript e as diferenas que os separam so o suficientemente importantes como para distingui-los facilmente.
Para programar em Javascript necessitamos basicamente o mesmo que para programar pginas web com HTML. Um editor de textos e um navegador compatvel com Javascript.
Em uma mesma pgina podemos introduzir vrios scripts. Cada um dos scripts deve ficar dentro de tags <SCRIPT> distintas. A colocao destes scripts indiferente, mas para melhor organizao do cdigo devemos coloc-los dentro das tags <head> e </head>. Tambm se pode escrever Javascript dentro de determinados atributos das tags HTML, como o atributo onclick. Estes atributos esto relacionados com as aes do usurio e so chamados de manipuladores de eventos. Existem duas maneiras de executar scripts na pgina. A primeira destas maneiras se trata de execuo direta de scripts, a segunda uma execuo como resposta ao de um usurio.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
3.2.1 Comentrios
Um comentrio uma parte de cdigo que no interpretada pelo navegador e tem como utilidade facilitar a leitura do programador. O programador, a medida que desenvolve o script, vai deixando frases ou palavras soltas, chamadas comentrios, que ajudam a ele ou a qualquer outro a ler mais facilmente o script na hora de modific-lo. Existem dois tipos de comentrios na linguagem. Um deles, a barra dupla, serve para comentar uma nica linha de cdigo. O outro comentrio usado para comentar vrias linhas e se indica com os caracteres /* para comear o comentrio e */ para termin-lo. Vejamos uns exemplos. <script language=javascript> // Este um comentrio de uma linha. /* Este comentrio pode se expandir por vrias linhas. Quantas o programador quiser. */ </script>
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
utiliz-las e estaremos nos acostumando a realizar uma sintaxe mais parecida habitual em torno de programaes avanadas.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Na linguagem Javascript no precisamos especificar nenhum tipo de dados para uma varivel. Podemos introduzir qualquer informao em uma varivel de qualquer tipo, inclusive podemos ir mudando o contedo de uma varivel de um tipo para outro. Vamos ver isto com um exemplo. var cidade = Salvador; var revisado = true; cidade = 32; revisado = no; Esta agilidade na hora de atribuir tipos s variveis pode ser uma vantagem princpio, sobretudo para pessoas inexperientes, mas a longo prazo pode ser uma fonte de erros j que dependendo do tipo que so as variveis se comportaro de um modo ou outro e se no controlamos com exatido o tipo das variveis podemos encontrar um texto somado a um nmero.
Exemplos: preo = 128; //introduzo um 128 na varivel preo unidades = 10; //outra atribuio fatura = preo * unidades; // multiplicao resto = fatura % 3; //obtenho o resto da diviso por 3 preo++; //incrementa em uma unidade o preo (agora vale 129)
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Exemplos: poupanca = 7000; // atribui 7000 a varivel poupanca. poupanca += 3500; // soma 3500 a varivel poupanca, que passa para 10500. Poupana /= 2; // divide por dois o valor de poupana, agora ficam 5250.
Um detalhe importante que pode ser visto neste caso, que o operador + serve para dois usos distintos: se seus operandos so nmeros, os soma; se os operandos so cadeias de caracteres, as concatena. Isto ocorre em geral com todos os operadores que se repetem na linguagem.
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Um caso que seria confuso o uso do operador + quando se realiza a operao com operadores texto e numricos misturados. Neste caso Javascript assume que se deseja realizar uma concatenao e trata aos dois operandos como se tratasse de cadeias de caracteres, inclusive se a cadeia de texto que temos for um nmero. Isto veremos mais facilmente com o seguinte exemplo. meuNumero = 23; minhaCadeia1 = pedro; minhaCadeia2 = 456; resultado1 = meuNumero + minhaCadeia1; // 23pedro resultado2 = meuNumero + minhaCadeia2; // 23456 minhaCadeia2 += meuNumero; // 45623 Como podemos ver, tambm no caso do operador +=, se estamos tratando com cadeias de texto e nmeros misturados, tratar aos dois operadores como se fossem cadeias.
Exemplo : meuBooleano = true; meuBooelano = !meuBooelano; // false tenhoFome = true; tenhoComida = true; comoComida = tenhoFome && tenhoComida; // true
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br
Av. Joo Antnio da Silveira, 351 Restinga Porto Alegre RS Autoria Web Professor: Gleison S. do Nascimento Email: gleison.nascimento@restinga.ifrs.edu.br