Erro em formulário de cadastro de livros [RESOLVIDO]

1. Erro em formulário de cadastro de livros [RESOLVIDO]

Rossano Huf
millemiglia

(usa Slackware)

Enviado em 15/09/2009 - 16:49h

Pessoal, sou novo em programação com MySQL e PHP e estou apanhando feio...
Estou desenvolvendo um site de bookcrossing para uma turma do 3º ano do ensino médio aqui da minha cidade.
Vi alguns sites do tipo (bookcrossing.com, livr.us e outros) e seguindo alguns modelos aqui do VOL e de algumas revistas de informática consegui fazer um script de cadastro e de pesquisa de livros.
Acontece que adaptei um formulário de cadastro de usuários para o uso como cadastro de livros. Até aí tudo bem, nenhum erro.
Ocorre que quero deixar uma página para cadastro de livros e outra para rastreio de livros mas sempre que tento retirar a pesquisa da página dá erro. O que estou fazendo de errado?
Agradeço qualquer ajuda que possam me dar.

Segue o script abaixo:
<?php $db = mysql_connect("localhost", "root","passwd");
mysql_select_db("books",$db);
if ($submit) {
if ($atualizar) {
$sql = "UPDATE livro SET titulo='$titulo',autor='$autor',editora='$editora'WHERE cdlivro=$id";
$result = mysql_query($sql,$db);
echo "Registro atualizado!<p>";
?><br />
<?php } else {
$sql = "INSERT INTO livro VALUES (0,'$titulo','$autor','$editora','$dtpub')";
$result = mysql_query($sql,$db);
echo "Registro gravado!<p>";
?><br />
<?php ($delete)
$sql = "DELETE FROM livro WHERE cdlivro=$id"; $result = mysql_query($sql,$db);
echo "Registro apagado!<p>";
?><br />
<?php } else {
if (!$id) {
?>
<form method="post" action="<?php echo $PHP_SELF?>">
<table>
<tbody>
<tr>
<td>Palavra-chave:</td>
<td><input name="chave" value="" type="text" /></td>
</tr>
</tbody>
</table>
<br />
<input name="palavra" value="Pesquisar" type="submit" />
</form>
<br />
<?php }
?>
<form method="post" action="<?php echo $PHP_SELF?>"><?php if ($id) {
$sql = "SELECT * FROM livro WHERE cdlivro=$id";
$result = mysql_query($sql,$db);
$myrow = mysql_fetch_array($result);
$id = $myrow["cdlivro"];
$titulo = $myrow["titulo"];
$autor = $myrow["autor"];
$editora = $myrow["editora"];
?><input name="id" value="<?php echo $id ?>" type="hidden" /><input name="atualizar" value="sim" type="hidden" /><?php }
?>Cadastro de livros
<br />
<br />
<table border="0">
<tbody>
<tr>
<td>Titulo:</td>
<td><input name="titulo" value="<?php echo $titulo ?>" type="text" /></td>
</tr>
<tr>
<td>Autor:</td>
<td><input name="autor" value="<?php echo $autor ?>" type="text" /></td>
</tr>
<tr>
<td>Editora:</td>
<td><input name="editora" value="<?php echo $editora ?>" type="text" /></td>
</tr>
<tr>
<td>Ano:</td>
<td><input name="dtpub" value="<?php echo $dtpub ?>" type="text" /></td>
</tr>
</tbody>
</table>
<br />
<br />
<input name="submit" value="Cadastrar" type="submit" />
</form>
<br />
<?php }
?>


  


2. Re: Erro em formulário de cadastro de livros [RESOLVIDO]

Bruno Rigolon
kalimbor

(usa Ubuntu)

Enviado em 17/09/2009 - 17:38h

Bom, aparentemente, estava faltando fechar a condição atualizar, e colocando um if no delete...

segue a correção aí, substitui a pela parte que fez.

else {
$sql = "INSERT INTO livro VALUES (0,'$titulo','$autor','$editora','$dtpub')";
$result = mysql_query($sql,$db);
echo "Registro gravado!<p>";
}
?><br />
<?php if ($delete)
{
$sql = "DELETE FROM livro WHERE cdlivro=$id"; $result = mysql_query($sql,$db);
echo "Registro apagado!<p>";
}

Vou ver o resto e ver se ta ok, mas a principio é isso.


3. Re: Erro em formulário de cadastro de livros [RESOLVIDO]

Rossano Huf
millemiglia

(usa Slackware)

Enviado em 24/09/2009 - 16:48h

Obrigado pela ajuda. Já consegui separar as páginas mas não tinha percebido que precisava dessa correção no código.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts