Array
(
)

alterar php

PHP
Sergio Filho
   - 20 nov 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>

Sergio Filho
   - 20 nov 2014

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!

Ronaldo Lanhellas
   - 20 nov 2014

Em primeiro lugar peço que use as tags "#Código

" 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.

William (devwilliam)
   - 21 nov 2014

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

Ronaldo Lanhellas
   - 21 nov 2014


Citação:
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.