Boa noite galera do forum! Preciso da ajuda de vocês, pois estou há alguns dias procurando algum bug mas não encontro. Vale lembrar que estou usando o PHPMyAdmin 2.10.3 e PHP 5. O que acontece é que estou desenvolvendo um sistema de administração que cadastra livros no MySQL. Para cadastrar, funciona. Na hora de editar é que tá o problema. Na hora que clico para editar, aparece a mensagem que configurei pra quando conseguir atualizar com sucesso, mas no banco de dados não altera o valor. Os códigos são: Arquivo editarlivro.php (o formulário que busca no banco de dados os valores para serem editados. Tá funcionando normal mas só tá um pouco extenso por causa do CSS e Javascript..) <?php
include "config.php";
include"restrito.php";
$id=$_GET["cod"];
$x=mysql_query("select * from compras where id='$id'");
$y=mysql_fetch_array($x);
?>
<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1", true />
<link href="../estilos.css" rel="stylesheet" type="text/css" />
<style type="text/css" media="screen">
<!--
#editlivrocorpo {
width: 650px;
display: block;
margin: 0 auto;
position: relative;
top:0px;
z-index:1;
overflow: auto;
left: 338;
height: 850px;
}
#editverisbn {
position:absolute;
left:2px;
background-color:transparent;
top:9px;
width:627px;
height:820px;
}
#editverdescricao {
position:absolute;
left:12px;
background-color:transparent;
top:246px;
width:495px;
height:121px;
}
-->
</style>
<script language='JavaScript'>
function SomenteNumero(e){
var tecla=(window.event)?event.keyCode:e.which;
if((tecla > 47 && tecla < 58)) return true;
else{
if (tecla != 8) return false;
else return true;
}
}
</script>
</head>
<body>
<div id="editlivrocorpo">
<div id="editverisbn">
<form id="form1" name="form1" method="post" action="?controle=editandolivro">
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="2">
<tr>
<td colspan="3" class="negrito12verde"><div align="center">Editando livro <?php echo $y[titulo]; ?></div></td>
</tr>
<tr>
<td colspan="3"> </td>
</tr>
<tr>
<td colspan="3" class="normal12verde"><div align="justify">
Utilize o formulário abaixo caso queira editar um livro já cadastrado. Mas atenção: PARA ALTERAR A FOTO VOCÊ DEVE, PRIMEIRO, EXCLUIR O LIVRO E CADASTRÁ-LO NOVAMENTE!<br />
<span class="negrito12vermelho">O PESO DO LIVRO DEVE SER INFORMADO MESMO QUE PERMANEÇA O MESMO</span></div></td>
</tr>
<tr>
<td colspan="3"> </td>
</tr>
<tr>
<td width="35%" class="negrito12verde">Título:</td>
<td colspan="2"><input name="cxtitulo" type="text" class="camposform12" id="cxtitulo" style="background-color: transparent" value="<?php echo $y[titulo]; ?>" size="40" maxlength="255" /></td>
</tr>
<tr>
<td class="negrito12verde">Autor:</td>
<td colspan="2"><input name="cxautor" type="text" class="camposform12" id="cxautor" style="background-color: transparent" value="<?php echo $y[autor]; ?>" size="40" maxlength="255" /></td>
</tr>
<tr>
<td class="negrito12verde">ISBN:</td>
<td colspan="2"><input name="cxisbn" type="text" class="camposform12" id="cxisbn" value="<?php echo $y[isbn]; ?>" size="40" maxlength="255" style="background-color: transparent" /></td>
</tr>
<tr>
<td class="negrito12verde">Preço:</td>
<td colspan="2"><input name="cxpreco" type="text" class="camposform12" id="cxpreco" value="<?php echo $y[preço]; ?>" size="40" maxlength="255" style="background-color: transparent" />
<span class="negrito10verde">*49,90 = R$ 49,90</span></td>
</tr>
<tr>
<td valign="top" class="negrito12verde">Foto da capa:</td>
<td colspan="2"><?php echo "<img src='$y[foto]' width='60' height='70' border='0'>"; ?></td>
</tr>
<tr>
<td class="negrito12verde">Editora:</td>
<td colspan="2"><input name="cxeditora" type="text" class="camposform12" id="cxeditora" value="<?php echo $y[editora]; ?>" size="40" maxlength="255" style="background-color: transparent" /></td>
</tr>
<tr>
<td class="negrito12verde">Idioma:</td>
<td colspan="2"><input name="cxidioma" type="text" class="camposform12" id="cxidioma" value="<?php echo $y[idioma]; ?>" size="40" maxlength="255" style="background-color: transparent" /></td>
</tr>
<tr>
<td class="negrito12verde">Edição:</td>
<td colspan="2"><input name="cxedicao" type="text" class="camposform12" id="cxedicao" value="<?php echo $y[edicao]; ?>" size="40" maxlength="255" style="background-color: transparent" /></td>
</tr>
<tr>
<td class="negrito12verde">Páginas:</td>
<td colspan="2"><input name="cxpaginas" type="text" class="camposform12" id="cxpaginas" value="<?php echo $y[paginas]; ?>" size="40" maxlength="255" style="background-color: transparent" /></td>
</tr>
<tr>
<td class="negrito12verde">Tipo de capa:</td>
<td colspan="2"><input name="cxcapa" type="text" class="camposform12" id="cxcapa" value="<?php echo $y[capa]; ?>" size="40" maxlength="255" style="background-color: transparent" /></td>
</tr>
<tr>
<td valign="top" class="negrito12verde">Resenha:</td>
<td colspan="2"><label>
<textarea name="cxresenha" id="cxresenha" cols="45" rows="5" wrap="hard" style="background-color: transparent"><?php echo $y[resenha]; ?></textarea>
</label></td>
</tr>
<tr>
<td valign="top" class="negrito12verde">Sobre o autor:</td>
<td colspan="2"><label>
<textarea name="cxsobreautor" id="cxsobreautor" wrap="hard" cols="45" rows="5" style="background-color: transparent"><?php echo $y[sobreautor]; ?></textarea>
</label></td>
</tr>
<tr>
<td colspan="3" class="negrito12verde"> </td>
</tr>
<tr>
<td colspan="3" class="negrito12verde" align="justify">ATENÇÃO: As informações abaixo irão aparecer para o usuário no site do PagSeguro quando o botão comprar for clicado.</td>
</tr>
<tr>
<td colspan="3" class="negrito12verde"> </td>
</tr>
<tr>
<td class="negrito12verde">Título:</td>
<td colspan="2"><input name="cxpagtitulo" type="text" class="camposform12" id="cxpagtitulo" value="<?php echo $y[titulo_pagseguro]; ?>" size="40" maxlength="255" style="background-color: transparent" /></td>
</tr>
<tr>
<td class="negrito12verde">Autor:</td>
<td colspan="2"><input name="cxpagautor" type="text" class="camposform12" id="cxpagautor" value="<?php echo $y[autor_pagseguro]; ?>" size="40" maxlength="255" style="background-color: transparent" /></td>
</tr>
<tr>
<td class="negrito12verde">Preço:</td>
<td colspan="2"><input name="cxpagpreco" type="text" class="camposform12" id="cxpagpreco" value="<?php echo $y[preco_pagseguro]; ?>" size="40" maxlength="255" style="background-color: transparent" />
<span class="negrito10verde">*4590 = R$45,90</span></td>
</tr>
<tr>
<td class="negrito12verde">Peso:<span class="negrito10vermelho"> (deixe este campo como está)</span></td>
<td colspan="2"><input name="cxpagpreco2" type="text" class="camposform12" id="cxpagpreco2" value="<?php echo $y[peso_pagseguro]; ?>" size="20" maxlength="255" style="background-color: transparent" />
<span class="negrito10verde">gramas</span></td>
</tr>
<tr>
<td class="negrito12verde">Peso a ser cadastrado:</td>
<td colspan="2"><select name="cxpagpeso" class="camposform12" id="cxpagpeso" style="background-color: transparent">
<option selected="selected"> </option>
<option value="0300">0,300</option>
<option value="1000">1</option>
<option value="2000">2</option>
<option value="3000">3</option>
<option value="4000">4</option>
<option value="5000">5</option>
<option value="6000">6</option>
<option value="7000">7</option>
<option value="8000">8</option>
<option value="9000">9</option>
<option value="10000">10</option>
<option value="11000">11</option>
<option value="12000">12</option>
<option value="13000">13</option>
<option value="14000">14</option>
<option value="15000">15</option>
<option value="16000">16</option>
<option value="17000">17</option>
<option value="18000">18</option>
<option value="19000">19</option>
<option value="20000">20</option>
<option value="21000">21</option>
<option value="22000">22</option>
<option value="23000">23</option>
<option value="24000">24</option>
<option value="25000">25</option>
<option value="26000">26</option>
<option value="27000">27</option>
<option value="28000">28</option>
<option value="29000">29</option>
<option value="30000">30</option>
</select>
<span class="negrito10verde">kg </span><span class="negrito10vermelho">INSIRA O PESO DO LIVRO AQUI!</span></td>
</tr>
<tr>
<td class="negrito12verde">Número:</td>
<td colspan="2"><input name="cxpagnumero" type="text" class="camposform12" id="cxpagnumero" value="<?php echo $y[numero_pagseguro]; ?>" size="40" maxlength="255" style="background-color: transparent" onkeypress="return SomenteNumero(event)" />
<span class="negrito10verde">*ISBN sem traços</span></td>
</tr>
<tr>
<td colspan="3"> </td>
</tr>
<tr>
<td> </td>
<td width="17%"><input name="Submit" type="submit" class="botaobusca" value="Editar" /></td>
<td width="48%"><input name="Submit2" type="reset" class="botaobusca" value="Redefinir" /></td>
</tr>
</table>
</form>
<br />
</div>
</div>
</body>
</html>
O arquivo editandolivro.php (é nele que está o comando UPDATE que não atualiza o banco)
<link href="../estilos.css" rel="stylesheet" type="text/css">
<?php
include "config.php";
include "restrito.php";
$id=$_GET['cod'];
$titulo=$_POST['cxtitulo'];
$autor=$_POST['cxautor'];
$isbn=$_POST['cxisbn'];
$preço=$_POST['cxpreco'];
$editora=$_POST['cxeditora'];
$idioma=$_POST['cxidioma'];
$edicao=$_POST['cxeditora'];
$paginas=$_POST['cxpaginas'];
$capa=$_POST['cxcapa'];
$resenha=$_POST['cxresenha'];
$sobreautor=$_POST['cxsobreautor'];
$titulo_pagseguro=$_POST['cxpagtitulo'];
$autor_pagseguro=$_POST['cxpagautor'];
$preco_pagseguro=$_POST['cxpagpreco'];
$peso_pagseguro=$_POST['cxpagpeso'];
$numero_pagseguro=$_POST['cxpagnumero'];
if(empty($titulo))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o título do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($autor))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o autor do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($isbn))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o ISBN do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($preço))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o preço do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($editora))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe a editora do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($idioma))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o idioma do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($edicao))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe a edição do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($paginas))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o número de páginas do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($capa))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o tipo de capa do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($resenha))
{
$_SESSION['erro']="<font face=verdana size=1><center>Insira a resenha do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($sobreautor))
{
$_SESSION['erro']="<font face=verdana size=1><center>Insira um texto breve sobre o autor do livro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($titulo_pagseguro))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o título do livro para aparecer no PagSeguro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($autor_pagseguro))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o autor do livro para aparecer no PagSeguro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($preco_pagseguro))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o preço do livro para aparecer no PagSeguro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($peso_pagseguro))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o peso do livro para aparecer no PagSeguro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
elseif(empty($numero_pagseguro))
{
$_SESSION['erro']="<font face=verdana size=1><center>Informe o número (ISBN sem traços) do livro para aparecer no PagSeguro.<br><a href=java script:history.go(-1) class=negrito12verde12verde>Clique aqui para voltar</a></center></font>";
include "404.php";
}
else
{
$atua=mysql_query("UPDATE compras SET id='$id', titulo='$titulo', autor='$autor', isbn='$isbn', preço='$preço', editora='$editora', idioma='$idioma', edicao='$edicao', paginas='$paginas', capa='$capa', resenha='$resenha', sobreautor='$sobreautor', titulo_pagseguro='$titulo_pagseguro', autor_pagseguro='$autor_pagseguro', preco_pagseguro='$preco_pagseguro', peso_pagseguro='$peso_pagseguro', numero_pagseguro='$numero_pagseguro' WHERE id='$id'");
if($atua)
{
echo "<center><div class=negrito12verde>Livro atualizado com sucesso!<br><A HREF=?controle=livros class=negrito12verde>Continuar</a></div></center>";
}
else
{
echo "<center><div class=negrito12verde>Erro na atualização!<br><A HREF=java script:history.go(-1) class=negrito12verde>Voltar</a></div><center>";
}
}
?>
Esta é a tabela no BD:
-- phpMyAdmin SQL Dump
-- version 2.10.3
-- http://www.phpmyadmin.net
--
-- Servidor: localhost
-- Tempo de Geração: Ago 04, 2009 as 07:56 PM
-- Versão do Servidor: 5.0.51
-- Versão do PHP: 5.2.6
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
--
-- Banco de Dados: `editora`
--
-- --------------------------------------------------------
--
-- Estrutura da tabela `compras`
--
CREATE TABLE `compras` (
`id` int(11) NOT NULL auto_increment,
`titulo` varchar(255) NOT NULL,
`autor` varchar(255) NOT NULL,
`isbn` varchar(255) NOT NULL,
`preço` varchar(255) NOT NULL,
`foto` varchar(255) NOT NULL,
`editora` varchar(255) NOT NULL,
`idioma` varchar(255) NOT NULL,
`edicao` varchar(255) NOT NULL,
`paginas` varchar(255) NOT NULL,
`capa` varchar(255) NOT NULL,
`resenha` text NOT NULL,
`sobreautor` text NOT NULL,
`titulo_pagseguro` varchar(255) NOT NULL,
`autor_pagseguro` varchar(255) NOT NULL,
`preco_pagseguro` varchar(255) NOT NULL,
`peso_pagseguro` varchar(255) NOT NULL,
`numero_pagseguro` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=16; O pior de tudo é que quando executo isso, aparece "Livro atualizado com sucesso!" , que é a mensagem configurada pra caso o comando SQL seja executado com sucesso, mas no BD não muda nenhum valor. Poderiam me ajudar? P.S. Na edição ele não edita a foto porque não sei como excluir uma e cadastrar outra em cima apagando o valor no BD e excluindo a foto no servidor pra depois fazer o move_uploaded_file, mas imagino que isso seja assunto pra outro tópico. Valeu!