Olá pessoal, preciso de ajuda o mais rápido possível.
Tenho um banco de dados conectado ao código PHP. Ele me apresenta uma tabela com os seus devidos campos. O meu objetivo é deixar, para o cliente, 3 desses campos abertos à modificação. Após modificados quero que, quando o cliente clique no botão ''Salvar alterações'', o banco de dados seja atualizado com essas informações novas.
Já tentei de MUITOS jeitos, estou a exatos 9 dias nesse dilema e o tempo de apresentação para minha chefe já foi expandido 2 vezes.
Não tenho muita experiência com PHP, na verdade esse é meu 1º projeto grande. Se souberem de algo que possa me ajudar eu agradeço imensamente.
Att. Matheus Galindo
Eis aqui os códigos em anexo: Arquivo em PHP 'atualizarDados.php':
<!DOCTYPE html><html><head><!--Título da página --><title>Consulta</title><metacharset="utf-8"><linkrel="stylesheet"type="text/css"href="css/bootstrap.min.css"><linkrel="stylesheet"type="text/css"href="personalizar.css"><scripttype="text/javascript"src="js/jquery.js"></script><scripttype="text/javascript"src="js/bootstrap.min.js"></script></head><body><navclass="navbar navbar-default"style="background-color:#065BD1;"><divclass="container-fluid"><divclass="navbar-header"><ahref="login.html"><imgsrc="logoPref.png"></a></div><ulclass="nav navbar-nav"><li><ahref="login.html">Home</a></li></ul><ulclass="nav navbar-nav navbar-right"><li><ahref="login.html"><spanclass="glyphicon glyphicon-log-out"></span> Sair</a></li></ul></div></nav><?php
session_start();#Declaração conexão
$conexao = mysqli_connect("localhost","root","","ferias20182");/*FUNÇÃO PARA VERIFICAR SE O BANCO DE DADOS FOI CONECTADO*/function conexaoBD(){if(mysqli_connect_error()){
echo "<br>Conexão não realizada. Erro".mysqli_connect_error();}//else{// echo "Conexão funcionou perfeitamente";//}}## COMANDO PARA NÃO APARECER WARNING DURANTE A EXECUÇÃO DO SCRIPT// error_reporting(0);// ini_set("display_erros", 0);## Declarando variavéis
$nome_servidor = $_POST["selectNome"];
$_SESSION["nomeServ"]= $nome_servidor;function consultarMatricula($nome_servidor ='', $conn=''){/*Seleciona tabela escala_ferias e puxa os resultados de acordo com o código de
lotação inserido*/
$sql5 ="SELECT matricula_servidor FROM dados_servidor where `nome_servidor`= '$nome_servidor'";
$result5 = mysqli_query($conn, $sql5);if(mysqli_num_rows($result5)>0){while($row2=mysqli_fetch_array($result5)){
$matriculaServidor = $row2["matricula_servidor"];
$sql2 ="SELECT * FROM `escala_ferias` where `matricula_servidor` = '$matriculaServidor'";
$result2 = mysqli_query($conn, $sql2);if(mysqli_num_rows($result2)>0){//nomes dos campos da tabela
echo "<form>";
echo "<table border=2><tr><th>Matricula</th><th>Mes gozo</th><th>Ano gozo</th><th>Confirmação</th><th>Observação</th><th></th></tr>";while($row2= mysqli_fetch_array($result2)){//Atribuição à variáveis para controle de férias por critério
$valorMatricula= $row2["matricula_servidor"];
$valorCriterio = $row2["criterio"];
$valorMesGozo = $row2["mes_Gozo"];
$valorAnoGozo = $row2["ano_Gozo"];
$observacao = $row2["observacao"];
$button ="<button class='btn btn-info' value = '1' name='registrarAlter'>Salvar alterações</button>";//Caso o critério seja 1 - férias somente em janeiroif($valorCriterio ==1){
$valorMes =1;//caso o critério seja 2 - férias entre abril e novembro}elseif($valorCriterio ==2){
$min =4;
$max =11;
$valorAnoGozo = date("Y")+1;
$valorMes ="<input name='mes_Gozo' type='number' min='$min' max='$max'>";}//caso o critério seja 3 - férias somente no mês seguinte ao mês de admissão do ano seguinte ao ano de admissãoelseif($valorCriterio ==3){//$mesSeguinte = $valorMesGozo + 1;
$valorMes ="<input name='mes_Gozo' type='number' min='1' max='12'>";
$valorAnoGozo = date("Y")+1;}//mostra a tabela na tela alimentada com as informações
echo "<tr><td>".$valorMatricula."</td><td>$valorMes"."</td><td>".$valorAnoGozo."</td><td><input type=checkbox name='inputConfirmacao' value = '1'>"."</td><td><input type='text' name = 'inputObservacao' placeholder='Campo para observação'>"."</td><td>".$button."</tr>";}//fecha a tabela
echo "</table>";
echo "<br>";
echo "</form>";}}}}##DECLARAÇÃO
conexaoBD();
consultarMatricula($nome_servidor, $conexao);?></body></html>
Arquivo em PHP 'dadosLogin.php':
<!DOCTYPE html><html><head><!--Título da página --><title>Consulta</title><metacharset="utf-8"><linkrel="stylesheet"type="text/css"href="css/bootstrap.min.css"><linkrel="stylesheet"type="text/css"href="personalizar.css"><scripttype="text/javascript"src="js/jquery.js"></script><scripttype="text/javascript"src="js/bootstrap.min.js"></script></head><body><navclass="navbar navbar-default"style="background-color:#065BD1;"><divclass="container-fluid"><divclass="navbar-header"><ahref="login.html"><imgsrc="logoPref.png"></a></div><ulclass="nav navbar-nav"><li><ahref="login.html">Home</a></li></ul><ulclass="nav navbar-nav navbar-right"><li><ahref="login.html"><spanclass="glyphicon glyphicon-log-out"></span>Sair</a></li></ul></div></nav><?php
## COMANDO PARA NÃO APARECER WARNING DURANTE A EXECUÇÃO DO SCRIPT
error_reporting(0);
ini_set("display_erros",0);// ----------------------------#Declaração de variáveis
$cpf = $_POST["inputCPF"];
$codLocal = $_POST["cod_lotacao"];// -----------------------#Declaração conexão
$conexao = mysqli_connect("localhost","root","","ferias20182");/*FUNÇÃO PARA VERIFICAR SE O BANCO DE DADOS FOI CONECTADO*/function conexaoBD(){if(mysqli_errno()){
echo "<br>Conexão não realizada. Erro".mysqli_connect_error();}else{// echo "Conexão rodou";}}# Testando consulta cpf/* Função para consultar CPF dentro do banco de dados */function consultaCPF($cpf ='', $conn=''){//SELECIONANDO O RESPONSÁVEL DA LOCAÇÃO
$sql3 ="SELECT `cod_local` FROM responsavel_lotacao where cpf= $cpf";
$result2 = mysqli_query($conn, $sql3);if(mysqli_num_rows($result2)>0){while($row2 = mysqli_fetch_array($result2)){
echo "<br>Código lotação:".$row2["cod_local"];}}}?><formmethod="post"><labelfor="cod_lotacao">Digite o código da sua lotação</label><inputname="cod_lotacao"type=text></input><buttontype="submit">Consultar</button></form><?php
//função que lista as informações da lotação em questãofunction listarServidor($cod_Lotacao ='', $conn=''){/*Seleciona tabela escala_ferias e puxa os resultados de acordo com o código de
lotação inserido*/
$sql2 ="SELECT matricula_servidor,nome_servidor FROM `dados_servidor` where cod_lotacao = $cod_Lotacao";
$result2 = mysqli_query($conn, $sql2);if(mysqli_num_rows($result2)>0){//nomes dos campos da tabela
echo "<form method='post' action='atualizarDados.php'>";
echo "<select name = 'selectNome'>";while($row2= mysqli_fetch_array($result2)){
$nome_servidor = $row2['nome_servidor'];
echo "<option value'".$nome_servidor."'>".$nome_servidor."</option>";//fecha a tabela
echo "<br>";}
echo "</select>";
echo "<button type= 'submit' class = 'btn btn-warning'>Consultar</button>";}
$sql3 ="SELECT `matricula_servidor`, `mes_Gozo`, `ano_Gozo`, `confirmacao`, `observacao` FROM `escala_ferias` ";}#Declaração e chamada de funções
conexaoBD();
consultaCPF($cpf,$conexao);
listarServidor($codLocal, $conexao);?></body></html>
Pergunta
Matheus Galindo
Olá pessoal, preciso de ajuda o mais rápido possível.
Tenho um banco de dados conectado ao código PHP. Ele me apresenta uma tabela com os seus devidos campos. O meu objetivo é deixar, para o cliente, 3 desses campos abertos à modificação. Após modificados quero que, quando o cliente clique no botão ''Salvar alterações'', o banco de dados seja atualizado com essas informações novas.
Já tentei de MUITOS jeitos, estou a exatos 9 dias nesse dilema e o tempo de apresentação para minha chefe já foi expandido 2 vezes.
Não tenho muita experiência com PHP, na verdade esse é meu 1º projeto grande. Se souberem de algo que possa me ajudar eu agradeço imensamente.
Att. Matheus Galindo
Eis aqui os códigos em anexo:
Arquivo em PHP 'atualizarDados.php':
Arquivo em PHP 'dadosLogin.php':
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.