![]() |
![]() | |||||||||||||||
|
Formulários Índice da página:
|
||||||||||||||||
![]() | ||||||||||||||||
|
Neste tutorial, você vai aprender a criar "Formulários Eletrónicos", que permitem
um usuário do Web submeter informações para o provedor do serviço.
Existem vários tipos de campos de entrada, como:
• Campos de entrada de texto.
• Menus de múltipla escolha ou escolha única. • Botões sim-ou-não. • Botões para submissão ou limpeza de formulário. Cada uma destes campos tem funcionalidade própria e você vai aprender em que situação utilizá-los em seus
formulários. Pode ter múltiplos formulários em um único hiperdocumento. Apenas certifique-se que os blocos <form></form> não se sobrepõem. Um formulário começa com a marcação <form> e termina com </form>. Outros items devem ser especificados.
• Primeiro O formulário precisa saber como enviar a informação para o servidor. Existem dois métodos, get e post. • Método get A maioria dos documentos html são recuperados a partir da requisão de uma única URL ao servidor. Assim, um formulário que utilize este método, envia toda sua informação ao final da URL activada. (Método de Query String). • Método post Este método transmite toda a informação fornecida via formulário, imediatamente após a URL activada. Ou seja, quando o servidor recebe uma activação de um formulário utilizando POST ele sabe que precisa continuar "ouvindo" para obter a informação. Este é o melhor método.(Método Tranfer Strings). • Segundo O formulário precisa saber para onde enviar a informação. Esta é a URL que é activada a partir do formulário, e ela é referenciada através da marcação action. Esta URL em geral aponta para um script cgi, asp, php, perl,etc. que irá receber e descodificar os resultados. Lembre-se que se você está referenciando um script que reside no mesmo servidor do formulário, você não precisa incluir a URL completa. Neste caso iremos usar um script php, pois o nosso site encontra-se num servidor unix e julgo ser um sistema bastante fácil de compreender. Cada marcação de entrada em um formulário tem uma opção name associada, de tal forma
que o script saiba qual o nome, isto é, como chamar cada valor digitado. Certamente você pode definir mais de um campo de entrada
textual ou menu dentro de um formulário, mas certifique-se de que cada um possui um nome diferente. Na verdade a expressão
name é o nome da variável que passará para o Script.
A forma mais simples de campo de entrada é a marcação text. Este campo
permite a digitação de uma única palavra ou linha de texto, e possui uma largura default de 20 caracteres com as seguintes opções: • value="" (Opcional). Utilizando a marcação value especifica que texto aparecerá no campo quando o formulário fôr exibido. • size="" (Opcional). Esta marcação altera o tamanho deste campo exibido na tela. O usuário sempre poderá digitar mais caracteres do que o tamanho do campo na tela, pois o texto irá se deslocar à esquerda dentro do campo. • maxlength="" (Opcional). Limita o número de caracteres que o usuário pode digitar, basta usar esta marcação. O formulário irá emitir um bip de erro se o usuário tentar digitar além do permitido em maxlength. Exemplo:
<html>
<head>
<title>Formulário Texto</title>
<style type="text/css">
.bot{font-family:Verdana,Arial; color:#ffff99; font-size:10px; background:#184A4A;
border:thin solid #875535; cursor:hand}
.1{font-family:Verdana,Arial; color:#ffff99; font-size:10px}
</style>
</head>
<body leftmargin="1" topmargin="0" bgcolor="#333333" text="#FFFF99">
<h3>Formulário Entrada Texto:</h3>
<form action="resposta.php" method="post">
<div class="tx1a">
Seu Nome: <br>
<input type="text" name="Nome" size="30" maxlength="30"><br>
(Máximo 30 caracteres)<br><br>
Seu Telefone: <br>
<input type="text" name="Telefone" size="12" maxlength="12"><br>
(Máximo 12 Dígitos)</div><br>
<input type="hidden" value="1" name="Controlo">
<div style="padding-left:30px">
<input type="submit" value=" Enviar " class="bot"></div>
</form>
<p align="center">
<input type="button" value="Fechar Janela" class="bot" onclick="window.close()"></p>
</body>
</html>
Marcações de entrada do tipo password são idênticas aos campos do tipo text, exceto pelo
fato de todos os caracteres serem exibidos como asteriscos (*). As opções
são as mesmas da expressão texto. Exemplo:
<html>
<head>
<title>Formulário PW</title>
<style type="text/css">
.bot{font-family:Verdana,Arial; color:#ffff99; font-size:10px; background:#184A4A;
border:thin solid #875535; cursor:hand}
.1{font-family:Verdana,Arial; color:#ffff99; font-size:10px}
</style>
</head>
<body leftmargin="1" topmargin="0" bgcolor="#333333" text="#FFFF99">
<h3>Formulário PassWord:</h3>
<form action="resposta.php" method="post">
<div class="tx1a">
Entre PassWord: <br>
<input type="text" name="PW" size="8" maxlength="8"><br>
(Entre PW com 8 Caracteres)<br><br>
<input type="hidden" value="2" name="Controlo">
<div style="padding-left:30px">
<input type="submit" value=" Enviar " class="bot"></div>
</form>
<p align="center">
<input type="button" value="Fechar Janela" class="bot" onclick="window.close()"></p>
</body>
</html>
Esta expressão utiliza uma marcação <textarea></textarea> que
delimita o texto inserido no meio das duas tags. Contém as seguintes opções: • rows="" (Obrigatório). Especifica o número de linhas da entrada textual. • cols="" (Obrigatório). Especifica o número de colunas da entrada textual. • default="" (Opcional). Este é o texto que pode mostrar de início se fôr inserido no meio das tags. Exemplo:
<html>
<head>
<title>Formulário Texto Área</title>
<style type="text/css">
.bot{font-family:Verdana,Arial; color:#ffff99; font-size:10px; background:#184A4A;
border:thin solid #875535; cursor:hand}
.1{font-family:Verdana,Arial; color:#000000; font-size:10px}
</style>
</head>
<body leftmargin="1" topmargin="0" bgcolor="#333333" text="#FFFF99">
<h3>Formulário Texto Área:</h3>
<form action="resposta.php" method="post">
<input type="hidden" value="3" name="Controlo">
Entre <br> para nova linha.<br>
<textarea name="Textoar" rows="5" cols="40" class="tx1a">Este texto é apenas um exemplo:
Escreva o Seu próprio Texto se desejar, como por exemplo a Sua Morada.
</textarea><br><br>
<div style="padding-left:30px">
<input type="submit" value=" Enviar " class="bot"></div>
</form>
<p align="center">
<input type="button" value="Fechar Janela" class="bot" onclick="window.close()"></p>
</body>
</html>
Existe a possibilidade de transferir variáveis ou valores necessários ao seu Script, através de
entradas ocultas. Nos exemplos acima mostrados, pode verificar que existe uma entrada tipo hidden
(escondida, não é mostrada na página) com o name=Controlo (Nome da variável a transferir),
e value igual a um valor que serve de controlo de reconhecimento ao script da
página que deve mostrar com suas respostas.
As Listas de selecção são feitas através da marcação <select></select> com
as entradas option value no meio das tags. Exemplo de Lista Simples: Exemplo:
<html>
<head>
<title>Formulário Listas</title>
<style type="text/css">
.bot{font-family:Verdana,Arial; color:#ffff99; font-size:10px; background:#184A4A;
border:thin solid #875535; cursor:hand}
.1{font-family:Verdana,Arial; color:#000000; font-size:10px}
</style>
</head>
<body leftmargin="1" topmargin="0" bgcolor="#333333" text="#FFFF99">
<h3>Formulário Listas:</h3>
<form action="resposta.php" method="post">
<input type="hidden" value="4" name="Controlo">
Qual das Cidades gosta mais?<br>
<select name="Cidade">
<option value="Aveiro">Aveiro</option>
<option value="Coimbra">Coimbra</option>
<option value="Faro">Faro</option>
<option value="Guarda">Guarda</option>
<option value="Lamego">Lamego</option>
<option value="Lisboa">Lisboa</option>
<option value="Leiria">Leiria</option>
<option value="Portimão">Portimão</option>
<option value="Porto">Porto</option>
<option value="Viseu">Viseu</option>
</select><br><br>
<div style="padding-left:30px">
<input type="submit" value=" Enviar " class="bot"></div>
</form>
<p align="center">
<input type="button" value="Fechar Janela" class="bot" onclick="window.close()"></p>
</body>
</html>
VerPara criar uma Lista múltipla, tem de criar um Array em Html (tabela),
para tal basta colocar duas chavetas [] à frente da sua variável
name, e seleccionar a opção multiple Exemplo:
<html>
<head>
<title>Formulário Lista Múltipla</title>
<style type="text/css">
.bot{font-family:Verdana,Arial; color:#ffff99; font-size:10px; background:#184A4A;
border:thin solid #875535; cursor:hand}
.1{font-family:Verdana,Arial; color:#000000; font-size:10px}
</style>
</head>
<body leftmargin="1" topmargin="0" bgcolor="#333333" text="#FFFF99">
<h3>Formulário Lista Múltipla</h3>
<form action="resposta.php" method="post">
<input type="hidden" value="5" name="Controlo">
Qual dos artigos deseja reservar?<br>
<select name="Cidade[]" multiple>
<option value="Hotel">Hotel</option>
<option value="Pousada">Pousada</option>
<option value="Pensão">Pensão</option>
<option value="Quarto Casal">Quarto Casal</option>
<option value="Quarto Simples">Quarto Simples</option>
<option value="Pequeno Almoço">Pequeno Almoço</option>
<option value="Almoço">Almoço</option>
<option value="Jantar">Jantar</option>
<option value="Fim de Semana">Fim de Semana</option>
<option value="Semana">Semana</option>
</select><br><br>
<div style="padding-left:30px">
<input type="submit" value=" Enviar " class="bot"></div>
</form>
<p align="center">
<input type="button" value="Fechar Janela" class="bot" onclick="window.close()"></p>
</body>
</html>
Pequenas caixas de selecção, para marcação de opções do usuário. A opção
checked selecciona o estado inicial, como marcado (on), da caixa. Exemplo:
<html>
<head>
<title>Formulário Check Box</title>
<style type="text/css">
.bot{font-family:Verdana,Arial; color:#ffff99; font-size:10px; background:#184A4A;
border:thin solid #875535; cursor:hand}
.1{font-family:Verdana,Arial; color:#FFFF99; font-size:10px}
</style>
</head>
<body leftmargin="1" topmargin="0" bgcolor="#333333" text="#FFFF99">
<h3>Formulário Check Box</h3>
<form action="resposta.php" method="post" class="tx1a">
<input type="hidden" value="6" name="Controlo">
Qual dos artigos deseja receber?<br>
<input type="checkbox" value="Livro A Esperança" name="Livro">Livro a Esperança<br>
<input type="checkbox" value="Filme A Esperança" name="Filme">Filme a Esperança<br>
<input type="checkbox" value="CD A Esperança" name="CD">CD A Esperança<br><br>
<div style="padding-left:30px">
<input type="submit" value=" Enviar " class="bot"></div>
</form>
<p align="center">
<input type="button" value="Fechar Janela" class="bot" onclick="window.close()"></p>
</body>
</html>
Utilizam uma notação similar à de checkboxes, contudo, apenas uma opção deve ser escolhida, para tal dê
o mesmo nome aos botões em que deseja a selecção. Tome em atenção que deve haver sempre um botão seleccionado
checked. Escolha a sua opção default. Exemplo:
<html>
<head>
<title>Formulário Botão Radio</title>
<style type="text/css">
.bot{font-family:Verdana,Arial; color:#ffff99; font-size:10px; background:#184A4A;
border:thin solid #875535; cursor:hand}
.1{font-family:Verdana,Arial; color:#FFFF99; font-size:10px}
</style>
</head>
<body leftmargin="1" topmargin="0" bgcolor="#333333" text="#FFFF99">
<h3>Formulário Botão Radio</h3>
<form action="resposta.php" method="post" class="tx1a">
<input type="hidden" value="7" name="Controlo">
Qual das Classes deseja viajar?<br>
<input type="radio" value="VIP" name="classe">VIP<br>
<input type="radio" value="Primeira" name="classe">Primeira<br>
<input type="radio" value="Segunda" name="classe">Segunda<br>
<input type="radio" value="Económica" name="classe" checked>Económica<br><br>
<div style="padding-left:30px">
<input type="submit" value=" Enviar " class="bot"></div>
</form>
<p align="center">
<input type="button" value="Fechar Janela" class="bot" onclick="window.close()"></p>
</body>
</html>
Como deve ter verificado, em todos os exemplos de formulários tem visto um botão
submit. Este botão é o que faz o reconhecimento das suas variáveis na form
, e as transfere para o seu script.
Existe também um botão tipo reset que se fôr inserido no seu formulário, quando seleccionado, limpa todas as entradas do usuário. Nota: Tem aqui o script resposta.php. | ||||||||||||||||
![]() | ||||||||||||||||
![]() |
![]() |
![]() |
![]() | |||||||||||||