alterar php

20/11/2014

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Alterar teste</title>
<script language="javascript" type="text/javascript" charset="utf-8">
function valida_form(altteste) {
//verifica a quantidade de caaracteres inseridos no campo'nom'
if (altteste.teste.value.length<2){
//se for inferior a quatro caracteres uma mensagem é mostrada
alert("O nome do autor deve conter no minimo 2 caracteres!");
//retorna falso para o formulario inibindo o seu envio para o servidor.Ocomando return encerra a função
return false;
}
return true;
}
</script>
</head>
<body>
<?php
//include com as variáveis do banco de dados
include("varteste.bd");
$link = mysql_connect($serv, $user, $pass) or die("Erro na conexao com o banco de dados");
mysql_select_db($bd) or die("Erro na seleção do banco de dados".mysql_errno($link).":".mysql_error($link)."\n<br>");
//validação de dados e métodos
if ((@$_POST["id"]!="")&&(strlen(@$_POST["teste"])>1)&&(@$_POST["id"]==@$_GET["id"])){
/* comando de alteração de dados deve-se preferencialmente filtrado pela chave primária,
assim garante que apenas um registro será filtrado
*/
$result=mysql_query("update teste set nomteste='".$_POST["teste"]."' where idteste=".$_GET["id"])
or die("Erro ao cadastrar um teste");
?>
<script language="javascript" type="text/javascript" charset="utf-8">
//interação do PHP com o javascript
alert("Registro alterado com sucesso!Codigo alterado:<?=$_GET["id"]?>");
</script>
<?php
}
/* verifica o registro que foi selecionado na página de listagem todo a informação mostrada na url
é interpretada pelo php como um envio de infomação pelo método GET */
if (@$_GET["id"]!=""){
$result=mysql_query("select idteste, nomteste from teste where idteste=".$_GET["id"]);
$relacao=mysql_fetch_array($result);
}
?>
<h1>Alterar Teste:</h1>
<hr>
<!--
o atributo onSubmit="return valida_form(this);"está chamando uma função JavaScript.
Além disso, o comando return força que o formulário só seja enviado se a função retornar verdadeiro(true)
-->
<form action="" method="post" enctype="multipart/form-data" name="altteste"
target="_self" onSubmit="return valida_form(this);">
<table width="40%" border="1">
<tr>
<td align="right" valign="top"><label for="id">Código:</label></td>
<td align="left" valign="top"><input type="text" name="id" id="id" value="<?=@$relacao["idteste"];?>"
readonly="true">
</td>
</tr>
<tr>
<td width="28%" align="right"><label for="teste">teste</label></td>
<td width="72%"><input type="text" name="teste" id="teste" value="<?=@$relacao["nomteste"];?>"> </td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" name="salvar" id= "Alterar" value="Alterar">  
<input type="reset" name="Limpar" id= "Limpar" value="Limpar">
</td>
</tr>
</table>
<p><a href="testelistar.php">Voltar</a></p>
</form>
</body>
</html>

PHP

Sergio Filho

Respostas

20/11/2014

Sergio Filho

Boa tarde fórum estou tentando por meio do código acima alterar um dado em um banco simples que criei com uma única tabela composta de dois campos (idteste e nomteste) quando eu abro o formulário para alterar deveria aparecer o código do teste e o nome do teste dentro de uma caixa de texto para serem modificados após um clic no botão Alterar...esse código estar no meu livro da faculdade só que "linkado" a outro banco....
Depois desse código estar funcionando eu vou utilizá-lo para um outro sistema de controle de conbustível!
Desde já agradeço a atenção!
Responder Citar

20/11/2014

Ronaldo Lanhellas

Em primeiro lugar peço que use as tags "
" no seu código pois facilita e muito a leitura.
Em segundo lugar preciso saber se ocorre algum erro, se ocorrer poste o erro aqui.
Responder Citar

21/11/2014

William (devwilliam)

Complementando o colega Ronaldo, evite usar "@" isso só atrapalha e acaba escondendo erros !!!
Responder Citar

21/11/2014

Ronaldo Lanhellas

Complementando o colega Ronaldo, evite usar "@" isso só atrapalha e acaba escondendo erros !!!


Assino em baixo, usando o "@" você não corrige os erros, apenas esconde e não saberá o que está ocorrendo. Evite ao máximo.
Responder Citar