Bonecos-sentados-em-cima-de-um-lapisQuando clicamos no botão “Enviar” num formulário HTML as informações contidas nos campos do formulário são enviadas ao servidor para que estas sejam tratadas e seja enviada uma resposta ao usuário. O PHP trata esses valores como variáveis. Existem dois métodos no PHP de enviar as informações ao servidor, o primeiro método é o ‘GET’ em que as informações são enviadas ao servidor através da URL, por exemplo http://www.criarsitessgratis.com/?user=problogger. O método ‘GET’ não é o método mais seguro para enviar informações ao servidor, por isso este método raramente é utilizado em sistemas de login ou em qualquer outra situação em que é necessário enviar informações privadas (como passwords). O segundo método para enviar informações ao servidor (e também o mais seguro) é o método ‘POST’ em que as informações não são enviadas através da URL. No exemplo abaixo utilizamos o método ‘POST’.

<html>
	<head>
		<title>Tutorial PHP</title>
	</head>
	<body>
		<form method="post" action="">
			<input type="text" name="mensagem" value="">
			<br />
			<input type="submit" name="enviar" value="Enviar">
		</form>
		<?php
			if(isset($_POST['mensagem'])){
				$mensagem = $_POST['mensagem'];
				echo "<p>Você escreveu a seguinte mensagem: $mensagem  </p>";
			}
		?>
	</body>
</html>

O parâmetro ‘action‘ do formulário HTML é deixado em branco porque o código PHP encontra-se todo no ficheiro ‘script3.php’ portanto a resposta do servidor será colocada no ficheiro ‘script3.php’ não havendo assim uma mudança de página.

O comando ‘if’ representa uma tomada de decisão por exemplo  ”SE o número 1 é igual ao número  2 faz isto, senão faz aquilo”. A forma geral do comando if é:

if (condição) { declaração } else{ outra_declaração };

 A condição do comando if é uma expressão que será avaliada. Se o resultado da condição for 0 (zero) , false ou null a declaração não será executada. Se o resultado da condição for qualquer valor diferente de 0 (zero) , false ou null a declaração será executada.

A função ‘isset()‘ serve para verificarmos se uma determinada variável foi iniciada. No script de hoje é utilizada a expressão:

if(isset($_POST['mensagem'])){
declaração
}

 A expressão acima traduzida para português seria: Se a variável $_POST[‘mensagem’] for iniciada, executa a declaração, senão não faça nada.

Mas como é transferido o conteúdo do campo HTML ‘mensagem’ para dentro de uma variável?

A resposta à pergunta acima é bastante simples, para guardar-mos o conteúdo de um campo HTML numa variável PHP, utilizamos a seguinte forma geral:

$_método[‘nome_do_campo_html’];

No caso do código abaixo nós utilizámos o método ‘POST’ por isso ficaria ‘$_POST’ e como o nome do campo HTML que queremos armazenar numa variável tem o nome de ‘mensagem’  ficaria $_POST[‘mensagem’] e pronto, quando clicar em enviar no formulário HTML, o conteúdo do campo ‘mensagem’ será armazenado na variável $_POST[‘mensagem’].

A variável $_POST[‘mensagem’] só será iniciada quando o formulário HTML for enviado, por isso é que utilizamos a função isset() para verificar quando é que a variável $_POST[‘mensagem’] foi inidada.

Como ‘$_POST[‘mensagem’]’ é um nome complicado de decorar, armazenamos o valor de ‘$_POST[‘mensagem’]’ na variável ‘$mensagem’ com a seguinte expressão:

$mensagem = $_POST['mensagem'];

 Depois de tudo isto foi só utilizar a função ‘echo’ para imprimir uma mensagem, sendo essa mensagem a seguinte:

'

Você escreveu a seguinte mensagem: $mensagem

';

 Com isto eu quero mostrar que a mensagem que é enviada pela função ‘echo’ vai no formato de HTML, dai o uso da tag “p”, a variável $mensagem é substituída pelo seu valor no servidor.

Formulários HTML e o PHP

Ao salvar o script de hoje e carregá-lo no browser, verá apenas um formulário que contém um espaço para digitar uma mensagem, como visto na imagem acima. Ao digitar um texto qualquer e submeter o formulário, irá aparecer a mensagem digitada pelo utilizador como na imagem abaixo:

Resposta do Servidor

O conteúdo acima pode parecer complicado de entender, mas iremos falar dele mais aprofundadamente num dos próximos tutoriais, por isso não desista de aprender PHP.

Gostou do Tutorial? Então deixe um comentário abaixo!

Anúncios