

localhost:8000.lab-php
│
├── php
│ ├── php.exe
│ ├── ext
│ ├── php.ini-development
│ └── outros arquivos do PHP
│
└── projeto
│
├── index.php
├── css
└── js
lab-php/phpphp.exe deve estar localizado diretamente dentro da pasta do seu projeto ex: lab-php/php.lab-php do seu projeto.cd projeto..\php\php -S localhost:8000PHP Development Server startedhttp://localhost:8000index.php será executado automaticamente.index.php na pasta projeto com o seguinte código:<?php
phpinfo();
?>http://localhost:8000 no navegador você visualizar a página de informações do PHP, seu ambiente está pronto para uso!.php e aprender a exibir informações na tela. A metodologia é direta: escrever, executar, analisar erros, corrigir e repetir.<?php e, opcionalmente, termina com ?>. Dentro dessas tags, você escreve a lógica do servidor. O PHP pode ser incorporado dentro de HTML ou usado em arquivos independentes.<?php
echo "Olá, Mundo!";
print "Bem-vindo ao PHP!";
?>echo e print são comandos para exibir conteúdo na tela. A principal diferença:echo é o mais utilizado no dia a dia.$ seguido do nome. Já as constantes são valores fixos que não mudam durante a execução.$nome = "Maria";
$idade = 21;
$media = 8.5;
$aprovado = true;define("PI", 3.14159);
define("NOME_SISTEMA", "MeuApp");
const VERSAO = "2.0";string, int, float, bool): representam um único valor.array, object): armazenam coleções de dados ou instâncias de classes.null, resource): para valores nulos ou referências a recursos externos."Olá" ou 'Mundo'42, -73.14, -0.5true, falsevar_dump($variavel) para descobrir o tipo e o valor de qualquer variável. É uma ferramenta essencial para depuração!$nota1 = 7.5;
$nota2 = 8.0;
$nota3 = 6.5;
$media = ($nota1 + $nota2 + $nota3) / 3;
echo "Média: " . $media;
// Resultado: Média: 7.3333...index.html, que será a porta de entrada para a nossa aplicação. Este arquivo conterá a navegação principal ou um link para o formulário de cadastro.index.html será o ponto de entrada para o nosso projeto de cadastro. Será a primeira página da nossa aplicação, a página que dá as boas vindas aos usuários e onde ele vai encontrar o link para a página de cadstro. Exemplo:<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Bem vindo ao nosso site</title>
<!-- Futuramente: <link rel="stylesheet" href="style.css"> -->
<!-- Link para a página de cadastro ex: href="cadastro.html"> -->
</head>
<body>
<h1> Seja muito vbem vindo ao nosso site!</h1>
</body>
</html><!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Formulário de Cadastro</title>
<!-- Link para o nosso arquivo CSS, que criaremos em seguida -->
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1>Cadastro de Usuário</h1>
<!-- O formulário enviará os dados para 'processar.php' -->
<form action="processar.php" method="POST">
<label>Nome:</label>
<input type="text" name="nome" required>
<br>
<label>Email:</label>
<input type="email" name="email" required>
<br>
<button type="submit">Cadastrar</button>
</form>
<!-- Onde incluiremos nosso JavaScript, se necessário -->
<script src="script.js"></script>
</body>
</html>action="processar.php" indica que os dados serão enviados para um script PHP que processará as informações.style.css será responsável por tornar seu formulário mais agradável e intuitivo.body {
font-family: Arial, sans-serif;
background-color: #f4f4f4;
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
margin: 0;
}
h1 {
color: #333;
text-align: center;
margin-bottom: 20px;
}
form {
background-color: #fff;
padding: 30px;
border-radius: 8px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
width: 100%;
max-width: 400px;
}
label {
display: block;
margin-bottom: 8px;
color: #555;
font-weight: bold;
}
input[type="text"],
input[type="email"] {
width: calc(100% - 20px);
padding: 10px;
margin-bottom: 20px;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 16px;
}
button[type="submit"] {
width: 100%;
padding: 12px;
background-color: #007bff;
color: white;
border: none;
border-radius: 4px;
font-size: 18px;
cursor: pointer;
transition: background-color 0.3s ease;
}
button[type="submit"]:hover {
background-color: #0056b3;
}style.css no mesmo diretório do seu arquivo HTML e PHP.processar.php é o script que irá receber e lidar com os dados enviados pelo formulário HTML. Ele é o elo entre a interface do usuário e o backend da aplicação, onde a lógica de negócio e o armazenamento de dados acontecem.<?php
$nome = $_POST['nome'] ?? '';
$email = $_POST['email'] ?? '';
$idade = $_POST['idade'] ?? '';
?>
<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dados do Cadastro</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="container">
<div class="card">
<h1>Dados Recebidos</h1>
<p><strong>Nome:</strong> <?php echo htmlspecialchars($nome); ?></p>
<p><strong>E-mail:</strong> <?php echo htmlspecialchars($email); ?></p>
<p><strong>Idade:</strong> <?php echo htmlspecialchars($idade); ?></p>
<div class="acoes">
<a class="btn" href="cadastro.html">Novo cadastro</a>
<a class="btn btn-secundario" href="index.html">Página inicial</a>
</div>
</div>
</div>
</body>
</html>$_POST. A função htmlspecialchars() é crucial para a segurança, convertendo caracteres especiais em entidades HTML para prevenir ataques de Cross-Site Scripting (XSS).script.js no mesmo diretório dos seus arquivos HTML e CSS, e adicione o seguinte código:// script.js
document.addEventListener('DOMContentLoaded', function() {
const form = document.querySelector('form');
const nomeInput = document.getElementById('nome');
const emailInput = document.getElementById('email');
form.addEventListener('submit', function(event) {
if (!validateForm()) {
event.preventDefault(); // Impede o envio do formulário se a validação falhar
}
});
function validateForm() {
let isValid = true;
if (nomeInput.value.trim() === '') {
alert('Por favor, insira seu nome.');
nomeInput.focus();
isValid = false;
}
if (emailInput.value.trim() === '') {
alert('Por favor, insira seu e-mail.');
emailInput.focus();
isValid = false;
} else if (!isValidEmail(emailInput.value.trim())) {
alert('Por favor, insira um e-mail válido.');
emailInput.focus();
isValid = false;
}
return isValid;
}
function isValidEmail(email) {
// Regex simples para validação de e-mail
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
return emailRegex.test(email);
}
});addEventListener para capturar o evento de envio do formulário (submit) e a função preventDefault() para interromper o processo caso a validação falhe. Mensagens de alerta são exibidas para orientar o usuário sobre os campos a serem corrigidos.HTML, CSS, JavaScript, ou PHP que geram a interface, como o index.php.HTTP (GET/POST), valida os dados de formulário e interage com o Model para obter ou manipular informações.MySQL e realizam operações CRUD (Create, Read, Update, Delete) com o banco de dados.PDO (PHP Data Objects) é utilizada para conectar com segurança ao banco de dados MySQL (normalmente na porta 3306), oferecendo uma interface consistente e mais segura do que as funções antigas do mysql_*.login.html) com campos para "Nome", "usuário (e-mail)" e "Senha", e um botão de submissão que aponte para o script PHP.autenticar.php) que receberá os dados do formulário via método POST.autenticar.php, receba as credenciais e armazene para comparar com os dados inseridos no formulário de login.if/else) para verificar a autenticação.echo e print.Nas próximas aulas: estruturas de controle (if/else,switch), loops (for,while) e funções — as ferramentas que vão dar inteligência aos seus programas!