Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rafaeloliveira83

UPDATE apagando os campos MySQL com PHP

Recommended Posts

Estou criando para poder atualizar os campos do meu site via PHP com MySQL via o comando UPDATE no formulário, porém ele está apagando os campos quando eu vou dar um UPDATE

 

<?php
if(isset($_POST['update']))
{
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}


$id = $_POST["ID"];
$produto = $_POST["Produto"];
$valor = $_POST["Valor"];


$sql = "UPDATE `produto`.`produtos` SET `Produto` = '$produto', `Valor` = '$valor' WHERE `produtos`.`ID` = '$id'";


mysql_select_db('produto');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
mysql_close($conn);
}
else
{
?>
<form method="post" action="<?php $_PHP_SELF ?>">
<table width="400" border="0" cellspacing="1" cellpadding="2">
<tr>
<td width="100">ID</td>
<td><input name="ID" type="text" id="ID"></td>
</tr>
<tr>
<td width="100">Produto</td>
<td><input name="produto" type="text" id="produto"></td>
</tr>
<tr>
<td width="100"> </td>
<td> </td>
</tr>
<tr>
<td width="100">Valor</td>
<td><input name="valor" type="text" id="valor"></td>
</tr>
<tr>
<td width="100"> </td>
<td> </td>
</tr>
<tr>
<td width="100"> </td>
<td>
<input name="update" type="submit" id="update" value="Update">
</td>
</tr>
</table>
</form>
<?php
}
?>

 

Exemplo:

 

ID = 1

Produto = DVD

Valor = 10,00

 

Quando eu jogo no formulário esses valores e dou um UPDATE o ID 1 fica com o Produto e Valor vazios:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dica: Esquece a classe mysql. Ela será descontinuada. Use o PDO. Eu tenho uma classe se quiser.

 

Verifique se os campos postados estão chegando direitinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seus "inputs" estão com todas as letras minúsculas e seus "POSTs" estão com a primeira letra maiúscula:

<input name="produto" type="text" id="produto">
<input name="valor" type="text" id="valor">

Veja:

$produto = $_POST["Produto"];
$valor = $_POST["Valor"];

Aí não pega o valor!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.