Boa tarde galera, hoje iremos cadastrar algumas informações no banco de dados MYSQL e carrega-las em um combobox.
OBS.: Caso não possua, clique nos links acima.
Inicialmente iremos criar o banco de dados, depois criaremos o arquivo de conexão com o banco e as páginas responsáveis por cadastrar as informações:
No Mysql:
mysql -uroot;
//Cria o banco de dados escola;
CREATE DATABASE escola;
//Passa a mecher no banco escola
USE escola;
//Cria tabela aluno com os campos aluno_id inteiro, auto incremental e primario, nome alphanumérico e professor booleano (verdadeiro ou falso)
CREATE TABLE aluno (aluno_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, nome VARCHAR(40), professor BOOLEAN);
//Cria tabela materias com os campos materia_id inteiro, auto incremental e primario, nome texto e aluno_id inteiro que é referenciado com o campo aluno_id da tabela aluno
CREATE TABLE materias (materia_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, nome VARCHAR(30), aluno_id INT, CONSTRAINT materias_aluno_id_fk FOREIGN KEY (aluno_id) REFERENCES aluno(aluno_id));
//Cria tabela materias com os campos materia_id inteiro, auto incremental e primario, nome texto e aluno_id inteiro que é referenciado com o campo aluno_id da tabela aluno
CREATE TABLE materias (materia_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, nome VARCHAR(30), aluno_id INT, CONSTRAINT materias_aluno_id_fk FOREIGN KEY (aluno_id) REFERENCES aluno(aluno_id));
Este arquivo terá o nome de conexao.php:
<?php
//Cria 3 variaveis as informações de conexão:Variavel guarda local de acesso ao MySQL (repare que os números que estão ali são da porta de acesso que foi configurado na instalação do MySQL).
$host="localhost:5433";
//Variavel guarda usuário de acesso ao banco de dados.
$user="root";
//Variavel guarda senha do usuário.
$password="";
//Cria a variavel “$con” usa a função mysql_connect e em caso de erro na conexão retorna uma mensagem informando a falha.
$con = mysql_connect ($host,$user,$password) or die ("Não foi possível se conectar ao banco de dados");
//Seleciona o banco de dados que será feita a conexão
mysql_select_db("escola"); ?>
Este arquivo terá o nome de cad_aluno.php:
<html> <!--Tag inicia um codigo HTML-->
<head> <!--Tag inicia cabeçalho da página-->
<title>TechLiveBR - Carregando um COMBOBOX</title> <!--Titulo da página-->
</head> <!--Tag fecha cabeçalho-->
<body> <!--Tag inicia o conteudo da página (corpo da página)-->
<form name="cad_alu" method="POST" action="rec.php"> <!-- Tag inicia um novo formulário usando a variavel global "POST" enviando as informações para a página "rec.php"-->
<label>Cadastrar aluno:</label></BR><!--Cria um rótulo de descrição do campo.-->
<input name="nome" type="text" maxlength="30" id="nome"></BR><!--Cria um campo de tipo texto(text) com limite de 30 caracteres-->
<label>Professor?</label><!--Cria um rótulo com descrição da caixa-->
<input name="prof" type="checkbox" id="prof"></BR><!--Cria um campo do tipo caixa (checkbox)-->
<input name="btn_cad_aluno" type="submit" value="Enviar"><!--Cria botão que envia as informações do form-->
</form><!--Fecha a tag form-->
</body><!--Fecha o corpo-->
</html><!--Fecha a tag html-->
Este arquivo terá o nome de rec.php:
<?php //Inicia um codigo PHP
require_once "conexao.php"; // Chama e faz conexão com o banco de dados.
$nome = $_POST['nome']; //Variavel $nome recebe da variavel global POST o que foi digitado no campo nome e o que está entre conchetes é a propriedade name do campo texto no HTML.
if (!empty($_POST['prof'])){ //Verificar se a caixa esta vindo vazia, se estiver vazia a variável $prof será 1 (true) senão será 0 (false)
$prof = "1"; //True
} else {
$prof = "0"; //False
}
$sql = "INSERT INTO aluno (nome, professor) VALUES ('$nome', '$prof')";
// Armazena na variável $sql uma inserção na tabela aluno com os valores que estão nas variaveis acima
mysql_query ($sql); // Executa o conteudo da variável $sql no banco de dados
mysql_close($con); //Fecha a conexão com o banco
echo "Aluno cadastrado com sucesso!"; echo "</BR>"; //Mostra na tela a mensagem que foi cadastrado com sucesso e pula uma linha.
echo "</BR>"; //Pula uma linha
echo "<a href='http://localhost/escola/cad_aluno.php'>Cadastrar aluno</a>" ; echo "</BR>"; //Cria um link voltar para a página de cadastro de aluno e pula uma linha
echo "<a href=http://localhost/escola/cad_materias.php>Cadastrar materias...</a>"; echo "</BR>"; //Cria um link para cadastrar materias e pula uma linha
?> <!--Termina um codigo PHP-->
Este arquivo terá o nome de cad_materias.php:
<html> <!--Inicia um código HTML-->
<head> <!--Inicia cabeçalho da página-->
<title>TechLiveBR - Carregando um COMBOBOX</title> <!--Titulo da página-->
</head> <!--Fecha cabeçalho-->
<body> <!--Inicia conteúdo da página (corpo da página)-->
<form name="cad_mat" method="POST" action="rec1.php"> <!--Inicia um novo formulário usando a variável global "POST" enviando as informações para a página "rec1.php"-->
<label>Cadastrar de materias:</label></BR> <!--Cria um rótulo com descrição do campo "nome" da matéria-->
<input name="nome" type="text" maxlength="30"></BR> <!--Cria um campo de tipo texto(text) com limite de 30 caracteres-->
<select name="nome-prof" id="nome-prof"> <!--Inicia a criação de um combobox-->
<option value="0">Selecione...</option> <!--Cria nova opção do combobox-->
<?php //Inicia código PHP
require_once "conexao.php"; //Chama e faz conexão com o banco de dados.
$sql = "SELECT aluno_id, nome FROM aluno WHERE professor = 1"; //Armazena na variável $sql uma consulta na tabela aluno pegando os campos aluno_id e nome onde o campo professor = 1 (true)
$qry_exec = mysql_query($sql); //Executa a variável $sql no banco de dados guardando o resultado na variável $qry_exec
mysql_close($con); // Fecha a conexão com o banco
$row = mysql_num_rows($qry_exec); //Função mysql_num_rows conta a quantidade de linhas armazenadas na variável $qry_exec e armazena o resultado na variável $row
$i = 0; //Cria a variável $i com valor 0
while ($i < $row){ //Cria um looping (laço de repetição) que roda enquanto a variável $i for menor que a variável $row
while ($result = mysql_fetch_array($qry_exec)){ //Cria outro laço (segundo) de repetição que percorre a variável $qry_exec jogando na variável $result o resultado de cada linha até chegar no fim do conteúdo
$id = $result['aluno_id']; //Guarda na variável $id o conteúdo da variável $result na posição que se encontra o resultado do campo aluno_id
$nome = $result['nome']; //Guarda na variável $nome o conteúdo da variável $result na posição que se encontra o resultado do campo nome
echo "<option value=".$id.">".$nome."</option>"; // Mostra na tela uma nova opção do combobox colocando na propriedade value o conteúdo da variável $id e na descrição o conteúdo da variável nome
$i++; //Incrementa +1 na variável $i
} // Fecha o segundo laço
} //Fecha o primeiro laço
?> <!--Fecha o código PHP-->
</select> <!--Fecha o combobox-->
<input name="btn_cad_mat" type="submit" value="Enviar"> <!--Cria o botão que irá enviar as informações para a página rec1.php onde será realizada a gravação no banco-->
</form><!--Fecha a tag form-->
</body> <!--Fecha o corpo-->
</html> <!-- Fecha a tag HTML-->Este arquivo terá o nome de rec1.php:
<?php //Inicia código PHP
require_once "conexao.php"; //Chama e faz conexão com o banco de dados
$nomemat = $_POST['nome']; //Variavel $nomemat recebe da variável global POST o que foi digitado no campo nome e o que está entre colchetes é a propriedade name do campo texto no HTML
$idprof = $_POST['nome-prof']; //Variável $idprof recebe da variável global POST o que selecionado no campo professor e o que está entre colchetes é a propriedade name do combobox
$sql = "INSERT INTO materias (nome, aluno_id) VALUES ('$nomemat',$idprof)"; //Guarda na variável $sql a inserção na tabela materias o materias o nome da matéria e o id do professor que está cadastrado na tabela aluno
mysql_query($sql); //Executa a inserção no banco de dados
mysql_close($con); //Fecha a conexão com o banco
echo "Materia cadastrada com sucesso!"; echo "</BR>"; //Mostra na tela a mensagem que foi cadastrado com sucesso e pula uma linha
echo "</BR>"; //Pula uma linha
echo "<a href='http://localhost/escola/cad_materias.php'>Cadastrar materia</a>" ; echo "</BR>"; //Cria um link que volta para a página de cadastro de materias e pula uma linha
?> <!--Termina um código PHP-->
Valeu.
1 comentários:
muito bom, parabéns
Postar um comentário
Gostou da postagem? Comente!