Update does not give error but does not update in database [closed]

-4

Why do not you UPDATE in the database? The code does not give an error but does not update.

<?php
elseif ($op === "atualizar")
{   
    //Atualizar arquivos
    $id = $_POST["id"];
    $nome = trim($_POST["nome"]);
    $tipo = $_POST["tipo"];
    if ($nome == "")
    {
        $mensagem = "O campo deve ser preenchido";
    }
    else
    {
        $sql = "UPDATE veiculo SET nome = '$nome', tipo = $tipo ";
        $result = mysql_query($sql, $conn);
        if ($result)
        {
            header("location:veiculoLista.php");
            exit;
        }
        else $mensagem = "Não foi possível atualizar. Verifique os dados!";
    }
}
?

<html>
    <head>
        <title>Veiculo cadastro</title>
    </head>
    <body>
        <h1>Cadastro de veiculo </h1>
        <font color="red"><?php if(isset($mensagem)) echo($mensagem);?></font>

            <form method="post" action="veiculo.php" name="fveiculo">

                <label>Nome</label><br />
                <input name="nome" type="text" value="<?php echo $nome; ?>" size="45"/>
                <br />
                <label>Tipo</label>
                <br />
                <select name="tipo" size="1">
        <option value="1" <?php if($tipo == 1) echo " selected"; ?>>Basico</option>
            <option value="2" <?php if($tipo == 2) echo " selected"; ?>>Avancado com opcionais</option>
                </select><br />

                    <?php if($op != "cadastrar"){?>
                            <input type="checkbox" name="excluir" value="excluir">Excluir<br>
                     <?php }?>

                     <?php if($op == "atualizar"){?>
                        <input type="hidden" name="id" value="<?php echo $id ?>">
                     <?php }?>

                    <input type="hidden" name="op" value="<?php echo $op ?>">
                    <input type="submit" value="Salvar"/>
                    <br />
                    <a href="javascript:void(null);" onclick="location.href='veiculoLista.php';">Voltar</a>
            </form>

    </body>
</html>
    
asked by anonymous 29.09.2015 / 10:30

1 answer

3

You are not putting the where condition in your update, the way it is, it updates everything, change the sql to =

$sql = "UPDATE veiculo SET nome = '$nome', tipo = $tipo WHERE id = $id";

I advise you to stop using mysql_* and use PDO .

    
29.09.2015 / 13:16