Ir para conteúdo
Fórum Script Brasil
  • 0

UPDATE não salva alteração no Banco - Com PHP


wioart

Pergunta

Olá companheiros,
 
Estou com um problema numa situação de atualização de cadastro no banco de dados. Usei métodos explicados em outros tópicos do Fórum porém não obtive sucesso.
 
- Tenho 3 páginas: lista, editar e salvar, todas .php.
 
- Puxo as informações do banco em lista.php e as linco para serem editadas em editar.php.
 
- O link funciona, abre em editar.php com o id vindo do banco e trazendo as informações necessárias, tudo certo.
 
- Eu altero os dados da coluna nome, por exemplo, e ele vai para a tela salvar.php mas não salva a alteração no banco, ele apaga ela!
 
- Tentei dar um echo em $id e $nome para ver o que estava chegando na tela, o id vem (pois estava no hidden da página anterior), mas não vem nada do $nome para salvar.php.

Exemplo:
Nome [Carlos] > altero para [João]
[Botão Editar] > clico em editar
Ele salva o dado, da coluna Nome do banco, em branco:
Nome [_______]
 
O que pode estar errado? Segue meu código das 3 páginas:
Obs: A linhas estão comentadas de acordo com um post do blog da Microcamp (link), talvez ajude no raciocínio:
 
::: Página que lista.php:
 
<?php
require_once('Connections/inscricao.php');
 
mysql_select_db($database_inscricao, $inscricao);// Selecionando o banco de dados
 
$resultado = mysql_query("SELECT * FROM congresso"); // A Variável $resultado faz uma consulta na tabela selecionando todos os registros de todos os campos
 
while($linha = mysql_fetch_array($resultado)) //A instrução while faz um loop entre todos os registros e armazena seus valores na variável $linha
{//Inicia o loop
?> 
<a href="editar.php?id=<?php echo $linha['id']; ?>"><!-- Passando o valor do id para a página editar.php -->
<?php
echo $linha['nome']; // Mostra o valor do registro dentro do loop
echo "<br />"; 
} // Retorna para o início do loop caso existam mais registros a serem mostrados
 
mysql_close($inscricao);
 
?>
 
::: Página editar.php
 
<?php
 
$id = $_GET['id']; // Recebendo o valor vindo do link
 
require_once('Connections/inscricao.php'); 
 
mysql_select_db($database_inscricaoicloc, $inscricao);// Selecionando o banco de dados
 
$resultado = mysql_query("SELECT * FROM congresso WHERE id = '".$id."'"); // Há variável $resultado faz uma consulta em nossa tabela selecionando somente o registro desejado
 
while($linha = mysql_fetch_array($resultado)) //Já a instrução while faz um loop entre todos os registros e armazena seus valores na variável $linha

?>
 
<form method="POST" action="salvar.php">
 
<input type="hidden" name="id" value="<?php echo $linha['id']; ?>" /><!-- Passando o valor da id em um campo oculto -->
 
<strong>Nome</strong>: 
 
<input type="text" name="nome" value="<?php echo $linha['nome']; ?>" /><br /><!-- Mostrando dentro do form o valor do campo nome -->
 
<input type="submit" value="Editar" />
</form>
<?php
}
?>

 
::: Página salvar.php: (acredito que o erro esteja aqui, pois até a tela editar tudo funciona)
 

<?php
require_once('Connections/inscricao.php');
 
mysql_select_db($database_inscricaoicloc, $inscricao);// Selecionando o banco de dados
 
$id = $_POST['id'];
$nome= $_POST['nome'];
 
echo $id;
echo $nome;
 
mysql_query("UPDATE congresso SET nome='".$nome."' WHERE id='".$id."'");
mysql_close($inscricao);
?>

 

Agradeço desde já pela colaboração.

 

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...