UPDATE com PHP e MySql
Hoje trago uma aplicação que também é bem simples, é o comando para atualizar os registros, esse comando SQL é o UPDATE, de novidade é utlizando o comando WHERE que indica em qual registro as alterações irão acontecer.
Utilizaremos o arquivo de conexão que criamos num tutorial anterior http://www.freelancersbrasil.com/conexao-com-mysql/
<?php
//chama o arquivo de conexão com o bd
include('conectar.php');
$nome = 'Lucas';
$data_nascimento = '1989-04-09';
$id_cliente = 1;
//consulta sql - update
$query = mysql_query("UPDATE clientes SET nome='$nome', data_nascimento='$data_nascimento' WHERE id_cliente='$id_cliente' ") or die(mysql_error());
//fecha a conexão com o banco
mysql_close($conexao);
?>
Posts relacionados:
- Insert com php e mysql
- Select com php e mysql
- UPDATE com JSP e MySQL
- Criando uma tabela no MySQL
- Conexão com MySQL
Tags: MySQL, PHP, tutoriais de php, tutorial php, tutorial php mysql, update, update com php, update com php mysql
Postado em domingo, junho 15th, 2008 at 23:38 na categoria Tutoriais. Siga o RSS 2.0 feed. You can leave a response, or trackback from your own site.
29/12/2008 as 10:35
Mt boa explicação, direta, fácil de entender!
Parabéns!!
29/12/2008 as 20:47
Oi pessoal.
Eu stou com um problema com este script.
Quando executo este script ele dá erro na linha 10 ( $query = mysql_query(“UPDATE clientes SET nome=’$nome’, data_nascimento=’$data_nascimento’ WHERE ). o erro é o seguinte Parse error: syntax error, unexpected T_STRING
Alguem poderia me ajudar, eu ainda sou iniciante.
OBRIGADO…
2/01/2009 as 16:28
Segundo o código que você passou é um erro de “escrita”, do código.
Ou seja esta faltando a cráusula do WHERE no seu código.
$query = mysql_query(“UPDATE clientes SET nome=’$nome’, data_nascimento=’$data_nascimento’ WHERE ?
o cerreto seria…
$query = mysql_query(“UPDATE clientes SET nome=’$nome’, data_nascimento=’$data_nascimento’ WHERE id_cliente=’$id_cliente’”);
Outra coisa que pode estar dando errado é se você copiou e colou o código exatamente como esta postado.
Se você dar uma olhada tem um fechamento de parênteses [")"] a mais.
Em caso de dúvidas é só entrar em contato
2/01/2009 as 17:28
Pronto, o parênteses a mais já foi removido
=D
30/01/2009 as 15:22
valeu mesmo pela solução mas se vc usar um
mysql_fetch_object
no lugar de vc mesmo passar o valor da variavel é muito melhor
rsrsrsr mas muito abrigado por me lembrar a sintax do update
30/01/2009 as 17:41
eu só fiz passando variável por variável como exemplo, o melhor mesmo seria criar uma método para fazer update e etc.
quando tiver um tempo vou criar uns métodos mais “bunitinhos” hehehe
26/02/2009 as 11:22
Como fazer um update pegando os dados da caixinha de texto? Primeiro precisa fazer ele pesquisar o nome e depois mostrar os dados e depois atualizar né? Como faz pra fazer isso com seu update?
26/02/2009 as 14:43
Chyou,
para pegar os dados de um input, você pode usar $_POST['NomeInput'], no caso do método do formulário ser POST, se for GET, você pode utilizar $_GET['NomeInput'], ou até mesmo $_REQUEST['NomeInput'] (pega os dois tipos).
mais detalhes aconselho ler a documentação do PHP.
8/04/2009 as 23:06
boa rapaz, excelente tutorial!
8/07/2009 as 19:36
Cara, tentei todas as formas de update aqui e nenhuma funcionou…. tentei todos os tipos de aspas e tals…
Tentei o seu aqui, e funcionou perfeitamente oO
20/08/2009 as 18:29
Simples e rápido, vlw
31/03/2010 as 8:16
Ola … da uma ajuda ae por favor!
1 – tenho um formulario de cadastramento.php
2 – tenho uma página que envia.php para o bando de dados
3 – tenho uma página de consulta.php contendo AUTO INCREMENT e coloquei para cada linha um link que vai para a página altarar.php
4 – tenho a página alterar.php onde QUERIA RSGATAR OS DADOS DAQUELA LINHA DA PÁGINA CONSULTA.php exemplo:
linha1 com link (auto increment)
linha2 com linha (auto increment)
linha3 com link (auto increment)
Duvida: Como faço para que meu formulario (alterar.php) resgate o que esta na linha3 da página consulta.php da mesma clicando no link ??!!
Agradeço desde ja!!
Abraço galera
2/04/2010 as 13:15
não entendi nada hahahah
26/04/2010 as 10:29
Muito bom me ajudou muito!
3/05/2010 as 8:54
boas. é o seguinte, eu fiz um sistema de login.
e neste momento queria que o utilizador registado, fizesse o login e conseguisse visualizar e editar os dados dele. mas SÓ dele.
como faço isso?
cumprimentos.
8/05/2010 as 23:04
Fabio,
vc esta armazenando os dados do user logado numa session?
11/05/2010 as 14:17
$query = mysql_query(“UPDATE clinetes set nome=’”.$nome.”‘,data_nascimento’”.$data_nascimento.”‘ where id_cliente=’”.$id_cliente.”‘”) or die(mysql_error());
tenta isso ae..
26/05/2010 as 10:08
Bom pessoal estou com um problema muito estranho, quando faço um update se a clausula WHERE ele funciona OK porem modifica todos os campos com aquele nome já que não segue uma regra de quando atualizar, porem quando coloco WHERE id_categori = ‘$id’ simplesmente não atualiza mais nada cai no else que criei.
29/05/2010 as 23:37
Michel,
post a query aqui por favor
1/06/2010 as 15:44
Olá Lucas!
Cara estou coloquei como você explicou só que ao inves de alterar o registro que eu gostaria, no caso do usuário logado através do ID, ele está inserindo um novo registro.
Teria como dar um help?
Segue meu codigo:
5/06/2010 as 10:30
Bom dia!
Caros Preciso de ajuda.
Estou tentando criar uma opção para contagem de pagina que foi aberta, criei 2 campos na tabela de ficha quantidade_visita e Ultimo_acesso.
Tenho o select que faz a busca dos campos principais, nessa consulta tem o link para a ficha que motras todos os dados, quero que toda vez que abrir a ficha faça o update acrescentado +1 na quantidade de visitas e data ou user em ultimo_acesso, ou alguém tem outras alternativas para fazer este tipo de contagem?
Desde já fico grato pela ajuda.
Adonilton
6/06/2010 as 18:42
Eu recomendaria o uso do CouchDB ao invés do MySQL
16/09/2010 as 6:33
todo isto nao esta pegar bem ou nao esta dar um bom resultado.
explica bem com 2 formularios se quer ajudar como fazer UPDATE
29/10/2010 as 9:43
Olá Estou precisando de ajuda num codigo, se alguem puder avaliar pq meu update esta dando errado, ficarei muito agradecido!!!
preciso retirar a quantidade da tabela estoque, mas naum faz nd!
Selecione!
Fonte de Alimentacao
Monitor lcd
Monitor crt
Mouse
Teclado
HD
Quantidade a retirar:
if(@$_REQUEST['retirar'] == “Retirar”)
{
$query = mysql_query(“SELECT nome, quantidade FROM produtos, estoque WHERE produtos.id = estoque.id and produtos.nome = ‘$produtoretirada’”);
$query2 = mysql_query(“SELECT id FROM produtos WHERE produtos.nome = ‘$produtoretirada’”);
$quantidaderetirada = $query['quantidade'];
$idprod = $query2['id'];
echo $quantretirada .”";
$quantidaderetirada = ($quantidaderetirada – $quantretirada);
echo $quantidaderetirada;
$query = mysql_query(“UPDATE estoque set quantidade = ‘$quantidaderetirada’ WHERE estoque.id = ‘$idprod’”)or die(mysql_error()) ;
}
3/01/2011 as 15:21
Muito bom esse codigo..
po eu rodei a net toda, mas esse post me ajudou muito!!
obrigado aew
25/01/2011 as 17:21
po to com um problemão aki…
na verdade desconfio que seja algo pequeno mais que eu não to conseguindo identificar…
$sql = “UPDATE cadorcamento SET id=’$id’, datacad=’$datacad’, nomecliente=’$nomecliente’, empresaparceira=’$empresaparceira’,
localidade=’$localidade’, quilometro=’$quilometro’, cidade=’$cidade’, estado=’$estado’, dataentrega=’$dataentrega’,
descricao=’$descricao’, valorequipe=’$valorequipe’, valortransporte=’$valortransporte’
WHERE id = ‘$id’ “;
quando do o submit ele diz que a operação foi feita com sucesso mais no banco não muda nada..
e se tirar a clausula where ele modifica tudo não só o id chamado
se puderem me ajudar valeuwss
25/05/2011 as 13:50
Boa tarde,
Preciso fazer update de uma tabela e outra, usando clausula where com datanascimento e admissao, só que a data está no modelo nacional… como faço para fazer essa atualização e colocar a data no modelo aaaa/mm/dd?
Obrigada,
Márcia
17/08/2011 as 13:26
Meu caro, agradeço-te muito, salvou minha vida hehe.
21/09/2011 as 10:20
gostei bastante da explicacao, mas nao entendi mt.
13/10/2011 as 19:12
Pessoal estou com um problema na parte de alterar dados eu fiz o seguinte código:
<input type="text" name="Login" value="” size=”20″>
<input type="text" name="Senha" value="”size=”20″>
ele serve para atualizar os dados do usuário que estiver logado,mas da este erro Notice: Undefined index: Login in C:\Program Files (x86)\VertrigoServ\www\painel\sidebar\admin\alterarsenha.php on line 31
eu ja tentei um monte de coisas para tirar este erro mais eu não consegui se alguém puder me ajudar eu agradeço desde já,robertinho.net
2/01/2012 as 6:43
facilimo de entender! Parabêns