Ir para conteúdo

Arquivado

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

wneo

Form update - Não está atualizando dados

Recommended Posts

Boa tarde!!!

 

Pessoal,

 

o update não está operando, não sei onde estou errando...

 

Tenho uma tabela chamados, com os campos id_chamado, assunto, descreva.

 

Aqui monto a exibição desses dados:

 

 

list_records.php

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<html>
<head>
<title>Update</title>
</head>
<body>

<?php

include ('conecta.php');


$sql = "SELECT * FROM chamados";
$resultado = mysql_query($sql);

?>



<table width="400" border="0" cellspacing="1" cellpadding="0">
<tr>
<td>
<table width="400" border="1" cellspacing="0" cellpadding="3">
<tr>
<td colspan="4"><strong>Dados da Tabela Chamados</strong> </td>
</tr>

<tr>
<td align="center" width="150px"><strong>id_chamado</strong></td>
<td align="center"><strong>Assunto</strong></td>
<td align="center"><strong>Descrição</strong></td>
<td align="center"><strong>Atualizar</strong></td>
</tr>

<?php
while($rows = mysql_fetch_array($resultado)){
?>

<tr>
<td><?php echo $rows['id_chamado']; ?></td>
<td><?php echo $rows['assunto']; ?></td>
<td><?php echo $rows['descreva']; ?></td>



<td align="center"><a href="update.php?id_chamado=<? echo $rows['id_chamado']; ?>">update</a></td>

</tr>

<?php
}
?>

</table>
</td>
</tr>
</table>

<?php
mysql_close();
?>



</body>
</html

Ao clicar no link update, montei os inputs com id_chamado, assunto e descrição... onde posso atualizar os dados doscampos assunto e descreva:

 

update.php

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />


<?php

include('conecta.php');

$id_chamado=$_GET['id_chamado'];

$sql = "SELECT * FROM chamados WHERE id_chamado='$id_chamado'";

$resultado = mysql_query($sql);

$rows = mysql_fetch_array($resultado);

?>


<table width="400" border="0" cellspacing="1" cellpadding="0">

<tr>

<form name="form1" method="post" action="update_ac.php">

<td>

<table width="100%" border="0" cellspacing="1" cellpadding="0">

<tr>

<td> </td>

<td colspan="3"><strong>Update dados da tabela Chamados</strong> </td>

</tr>
<tr>
<td align="center"> </td>
<td align="center"> </td>
<td align="center"> </td>
<td align="center"> </td>
</tr>
<tr>
<td align="center"> </td>
<td align="center"><strong>id_chamado</strong></td>
<td align="center"><strong>Assunto</strong></td>
<td align="center"><strong>Descrição</strong></td>
</tr>
<tr>
<td> </td>

<td align="center">

<input name="id_chamado" type="text" id="id_chamado" value="<? echo $rows['id_chamado']; ?>">

</td>

<td align="center">

<input name="assunto" type="text" id="assunto" value="<? echo $rows['assunto']; ?>" size="15">

</td>
<td>
<input name="descreva" type="text" id="descreva" value="<? echo $rows['descreva']; ?>" size="15">
</td>
</tr>
<tr>
<td> </td>
<td>

<input name="id_chamado" type="hidden" id="id_chamado" value="<? echo $rows['id_chamado']; ?>">
</td>
<td align="center">
<input type="submit" name="Submit" value="Update">
</td>
<td> </td>
</tr>
</table>
</td>
</form>
</tr>
</table>

<?php

mysql_close();

?>

E agora faço o sql UPDATE:

A o códiga a seguir é executado quando clica no submit do form da pagina update.php, enviando através do action, para a página update_ac.php.

 

update_ac.php

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<?php

include('conecta.php');

$assunto = $_POST['assunto'];
$descreva = $_POST['descreva'];

$sql = "UPDATE chamados SET assunto='$assunto', descreva='$descreva' WHERE id_chamado='$id_chamado'";

$resultado = mysql_query($sql);

if($resultado){
echo "Successful";
echo "<BR>";
echo "<a href='list_records.php'>View result</a>";
}

else {
echo "ERROR";
}

?>

...Não sei onde estou errando...os dados não estão atualizando..=/

uma ajuda gente..=/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na página onde exibo os dados, tenho um link chamado update, onde defino aqui, que ao clicar no mesmo, irá abrir aquela descrição e assunto referente aquele id:

 

Nesse trecho da pagina list_records.php

 

<a href="update.php?id_chamado=<? echo $rows['id_chamado']; ?>">update</a>

 

Na página update.php que é onde aparece os inputs do assunto e descrição, que abriram relacionados ao id escolhido, faço essa captura antes do select:

 

$id_chamado=$_GET['id_chamado'];

Compartilhar este post


Link para o post
Compartilhar em outros sites

No seu formulário tem um input hidden, veja:

<input name="id_chamado" type="hidden" id="id_chamado" value="<? echo $rows['id_chamado']; ?>">

Então, seu update teria que estar assim:

$id_chamado = $_POST['id_chamado'];
$assunto = $_POST['assunto'];
$descreva = $_POST['descreva'];

$sql = "UPDATE chamados SET assunto='$assunto', descreva='$descreva' WHERE id_chamado='$id_chamado'";
$resultado = mysql_query($sql) or die(mysql_error());

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

No seu formulário tem um input hidden, veja:

<input name="id_chamado" type="hidden" id="id_chamado" value="<? echo $rows['id_chamado']; ?>">

Então, seu update teria que estar assim:

$id_chamado = $_POST['id_chamado'];
$assunto = $_POST['assunto'];
$descreva = $_POST['descreva'];

$sql = "UPDATE chamados SET assunto='$assunto', descreva='$descreva' WHERE id_chamado='$id_chamado'";
$resultado = mysql_query($sql) or die(mysql_error());

Perfeito Allex!!!

 

Era isso mesmo, RESOLVIDO =D

Muito obrigado Allex!!!

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.