UPDATE não funciona [RESOLVIDO]

1. UPDATE não funciona [RESOLVIDO]

Jessé Lopes Pereira
BearK

(usa Outra)

Enviado em 13/09/2017 - 16:00h

Olá pessoal, novo aqui no fórum e no PHP também, estou fazendo um sisteminha bacana aqui para aprender coisas do PHP, bom, eu uso uma página chamada "modificar_usuario.php", lá faz um SELECT e cria o form bonitinho com os inputs editáveis com os valores puxados do banco, mas quando ele envia para o arquivo "update.php" ele não vai nada, só me dá a mensagem de configuração, eu tenho inúmeros forms na página "modificar_usuario.php", pois o principal eu faço a consulta "SELECT" pelo ID, e cria dinamicamente os outros formulários. Vou postar o código:

modificar_usuario.php:

<?php
error_reporting(0);
$con = mysqli_connect("localhost","root","","alunos");
$id=$_POST['id'];
if($con->connect_error){
echo 'Connection Faild: '.$con->connect_error;
}else{
$sql="SELECT * FROM alunos WHERE id like '%$id%'";

$res=$con->query($sql);

while($row=$res->fetch_assoc()){
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<link rel="icon" href="img/favicon.ico">
<title>Dashboard / E-Cloud</title>
<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/ie10-viewport-bug-workaround.css" rel="stylesheet">
<link href="css/navbar-fixed-top.css" rel="stylesheet">
<script src="js/ie-emulation-modes-warning.js"></script>
</head>

<!-- Folha de estilos -->
<style>
.n_monitor .btn
{
width: 126px;
height: 54px;
background-color: #3baed8;
border: none;
color: #fff;
font-size: 14px;
border-radius: 3px;
}
.row {
margin: 0 auto;
width: 100%;
}
</style>
<!-- Termina folha de estilos -->

<body>
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Navegação em Parte</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="index.php">Início</a>
</div>
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li><a href="dashboard.php">Central</a></li>
<li><a href="add_aluno.php">Adicionar aluno</a></li>
<li class="active"><a href="#">Modificar aluno</a></li>
<li><a href="excluir_aluno.php">Excluir aluno</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<li><a href="../navbar/">Sair</a></li>
</ul>
</div>
</div>
</nav>

<div class="container">

<form method="POST">
<div class="form-group">
<label for="id">ID do aluno</label>
<input type="text" name="id" size="60" class="form-control" placeholder="Exemplo: 1">
</div>
<div class="n_monitor">
<div class="panel panel-default">
<div class="panel-body text-center">
<input type="submit" name="pesquisar" value="search" class="btn btn-success"></input>
</div>
</div>
</div>
</form>
</div>
<?php
$search_value = $_POST["id"];
$query = "SELECT * FROM alunos WHERE id ='%$id%'";
$result = mysqli_query($con, $query);
if ($res=$con->query($sql)) {
if($res)
{
while($row = mysqli_fetch_array($res)):
?>
<form action="update.php" method="POST">
<div class="row" style="text-align:center">
<div class="span6" style="float: none; margin: 0 auto; ">
<div class="col-sm-6 col-md-6">
<div class="thumbnail">
<img src=<?php
echo $row["foto"];
?> alt="imagem_aluno" height="300" width="230">
<div class="caption">
<h3><?php
echo '<td><input class="text" type="text" name="nomecompleto" value="'. utf8_encode($row["nomecompleto"]) .'"></td>';
?></h3>
<p><?php
echo "Meu ID é <strong>". '<td><input class="text" type="text" size="1" name="id" value="'.$row["id"].'"></td>'."</strong>";
?></p>
<p><?php
echo "Tenho <strong>". '<td><input class="text" type="text" size="1" name="idade" value="'.$row["idade"].'"></td>'."</strong> anos";
?></p>
<p><?php
echo utf8_encode("Sou de <strong>". '<td><input class="text" type="text" size="20" name="naturalidade" value="'.$row["naturalidade"].'"></td>'."</strong>");
?></p>
<p><?php
echo "Meu número é <strong>". '<td><input class="text" type="text" size="10" name="telefone" value="'.$row["telefone"].'"></td>'."</strong>";
?></p>
<p><?php
echo "O número do meu responsável é <strong>". '<td><input class="text" type="text" size="10" name="telefoneresponsavel" value="'.$row["telefoneresponsavel"].'"></td>'."</strong>";
?></p>
<p><?php
echo "Meu tipo sanguíneo é <strong>". '<td><input class="text" type="text" size="1" name="tipagemsanguinea" value="'.$row["tipagemsanguinea"].'"></td>'."</strong>";
?></p>
<p><?php
echo utf8_encode("Moro na <strong>". '<td><input class="text" type="text" size="30" name="endereco" value="'.$row["endereco"].'"></td>'."</strong>");
?></p>
<p><?php
echo "Nasci em <strong>". '<td><input class="text" type="text" size="6" name="datanascimento" value="'.$row["datanascimento"].'"></td>'."</strong>";
?></p>
<p><?php
echo utf8_encode("Estudo no <strong>". '<td><input class="text" type="text" size="2" name="serie" value="'.$row["serie"].'"></td>'."</strong>");
?></p>
<p><?php
echo "Meu CPF é <strong>". '<td><input class="text" type="text" size="10" name="cpf" value="'.$row["cpf"].'"></td>'."</strong>";
?></p>
<p><?php
echo "Meu RG é <strong>". '<td><input class="text" type="text" size="10" name="rg" value="'.$row["rg"].'"></td>'."</strong>";
?></p>
<p><?php
echo '<input type="submit" class="btn btn-success"></input>';
?></p>
</div>
</div>
</div>
</div>
<?php endwhile; }} ?>
</div>
</form>
</body>
</html>


update.php:

<?php
//Define charset
header('Content-Type: text/html; charset=UTF-8');
//Pega os valores da página anterior 'modificar_aluno.php'
$strcon = mysqli_connect('localhost','root','','alunos') or die('Erro ao conectar ao banco de dados');
$strcon->set_charset('utf8');
$nomecompleto = $_POST['nomecompleto'];
$idade = $_POST['idade'];
$naturalidade = $_POST['naturalidade'];
$tipagemsanguinea = $_POST['tipagemsanguinea'];
$telefone = $_POST['telefone'];
$telefoneresponsavel = $_POST['telefoneresponsavel'];
$endereco = $_POST['endereco'];
$cpf = $_POST['cpf'];
$rg = $_POST['rg'];
$datanascimento = $_POST['datanascimento'];
$serie = $_POST['serie'];
$id = $_POST['id'];

//Faz o update
$sql = "UPDATE
alunos
SET
nomecompleto = '$nomecompleto',
idade = '$idade',
naturalidade = '$naturalidade',
telefone = '$telefone',
telefoneresponsavel = '$telefoneresponsavel',
tipagemsanguinea = '$tipagemsanguinea',
endereco = '$endereco',
datanascimento = '$datanascimento',
serie = '$serie',
cpf = '$cpf',
rg = '$rg'
WHERE
id = '$id'";

//Mostra mensagem ao finalizar o processo
echo "<script type='text/javascript'>window.alert('Aluno modificado com sucesso!');</script>";
echo '<meta HTTP-EQUIV="Refresh" CONTENT="1; URL=dashboard.php">';
?>



  


2. Re: UPDATE não funciona [RESOLVIDO]

Hector Nagao
heckjp

(usa elementary OS)

Enviado em 13/09/2017 - 16:13h

Pode parecer besta.. mas troque os botões de <button> para <input type="submit">e veja se os dados serão repassados a outra pagina.


3. Re: UPDATE não funciona [RESOLVIDO]

Jessé Lopes Pereira
BearK

(usa Outra)

Enviado em 13/09/2017 - 16:17h

heckjp escreveu:

Pode parecer besta.. mas troque os botões de <button> para <input type="submit">e veja se os dados serão repassados a outra pagina.


Não foi :/


4. Re: UPDATE não funciona [RESOLVIDO]

Hector Nagao
heckjp

(usa elementary OS)

Enviado em 13/09/2017 - 16:23h

Você verificou se os dados estão chegando no update.php? Dar print nas variaveis sem fazer o update?


5. Re: UPDATE não funciona [RESOLVIDO]

Jessé Lopes Pereira
BearK

(usa Outra)

Enviado em 13/09/2017 - 16:29h

heckjp escreveu:

Você verificou se os dados estão chegando no update.php? Dar print nas variaveis sem fazer o update?


Depois que mudei o último campo "rg" e dei salvar, a página update me retornou isso: http://prntscr.com/gksmve

Esse que está selecionado é a minha alteração no RG, ele printou a minha alteração correto, mas não grava no banco.




6. Re: UPDATE não funciona [RESOLVIDO]

Hector Nagao
heckjp

(usa elementary OS)

Enviado em 13/09/2017 - 17:15h

Você está colocando a variável entre aspas simples, o que indica que está explicitamente enviando uma string. O campo rg no banco de dados é uma string ou você usou outro tipo de entrada?


7. Re: UPDATE não funciona [RESOLVIDO]

Jessé Lopes Pereira
BearK

(usa Outra)

Enviado em 13/09/2017 - 17:16h

Consegui resolver, era muito bobo o erro! Kkkkk
Faltou um:
$query = $strcon->query($sql); 
ficando assim:

<?php
//Define charset
header('Content-Type: text/html; charset=UTF-8');
//Pega os valores da página anterior 'modificar_aluno.php'
$strcon = mysqli_connect('localhost','root','','alunos') or die('Erro ao conectar ao banco de dados');
$strcon->set_charset('utf8');
$nomecompleto = $_POST['nomecompleto'];
$idade = $_POST['idade'];
$naturalidade = $_POST['naturalidade'];
$tipagemsanguinea = $_POST['tipagemsanguinea'];
$telefone = $_POST['telefone'];
$telefoneresponsavel = $_POST['telefoneresponsavel'];
$endereco = $_POST['endereco'];
$cpf = $_POST['cpf'];
$rg = $_POST['rg'];
$datanascimento = $_POST['datanascimento'];
$serie = $_POST['serie'];
$id = $_POST['id'];

//Faz o update
$sql = "UPDATE
alunos
SET
id = '$id',
nomecompleto = '$nomecompleto',
idade = '$idade',
naturalidade = '$naturalidade',
tipagemsanguinea = '$tipagemsanguinea',
telefone = '$telefone',
telefoneresponsavel = '$telefoneresponsavel',
endereco = '$endereco',
cpf = '$cpf',
rg = '$rg',
datanascimento = '$datanascimento',
serie = '$serie'
WHERE
id = '$id'";
$query = $strcon->query($sql);
//Mostra mensagem ao finalizar o processo
echo "<script type='text/javascript'>window.alert('Aluno modificado com sucesso!');</script>";
echo '<meta HTTP-EQUIV="Refresh" CONTENT="1; URL=dashboard.php">';
?>







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts