Ir para conteúdo

POWERED BY:

Arquivado

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

janetutor

You have an error in your SQL syntax

Recommended Posts

Olá pessoal estou desenvolvendo um site imobiliario, e tem a opção de editar o imóvel, então cliente vai edita o imóvel, até ai ok, mas quando ele vai salvar as alterações ele apresenta o seguinte erro:

 

 

 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' teste ',imovel_desc='3',imovel_tipo='1',imovel_suite='1'' at line 1

 

Código php:

 

 

<?php
if (isset($_POST['txt_cod'])):


    $id_atual = $_POST['txt_id_atual'];


    //trato os dados na classe 
    $campo = new CadastroImoveis(
            $_POST['txt_cod'], $_POST['txt_desc'], $_POST['txt_tipo'], $_POST['txt_suite'], $_POST['txt_banheiro'], $_POST['txt_comodo'], $_POST['txt_quartos'], $_POST['txt_valor'], $_POST['txt_garagem'], $_POST['txt_bairro'], $_POST['txt_iptu'], $_POST['txt_condominio'], $_POST['txt_util'], $_POST['txt_total'], $_POST['txt_cat']);

//instancio a conexao
   $insere = new Conexao();

//seto o sql
    $sql = "update imoveis set imovel_cod='{$campo->getCod()}','{$campo->getTitle()}',imovel_desc='{$campo->getDesc()}',imovel_tipo='{$campo->getTipo()}',imovel_suite='{$campo->getSuite()}',imovel_banheiro='{$campo->getBanheiro()}',imovel_comodos='{$campo->getComodos()}',imovel_quarto='{$campo->getQuartos()}',imovel_valor='{$campo->getValor()}',imovel_garagem='{$campo->getGaragem()}',imovel_bairro='{$campo->getBairro()}',imovel_iptu='{$campo->getIptu()}',imovel_condominio='{$campo->getCondominio()}',imovel_area='{$campo->getUtil()}',imovel_area_total='{$campo->getTotal()}',imovel_categoria='{$campo->getCat()}'";

      $sql .= "where imovel_id = '$id_atual' ";

    //gravo os dados
     $insere->ExecSQL($sql);


//volto para os imoveis
    echo '<div id="sucesso">Imóvel alterado com sucesso</div>';
    header('Refresh: 2; url=?pag=resultado');

endif; // fim do if post enviado

/* * *************************************** */
//se existe o get do imovel na URL
if (isset($_GET['id'])):

    $imovel_id = $_GET['id'];

    $imoveis = new Conexao();

    $query = "select * from imoveis, estado, cidade, bairro, tipo, categoria where imovel_bairro = bairro_id and imovel_tipo = tipo_id and imovel_categoria = categoria_id";
    $query .= " and imovel_id = '$imovel_id'" ;

     $imoveis->ExecSQL($query);
    $imovel= $imoveis->ListarDados();
    ?>


    <script src="../lightbox/js/jquery-1.11.0.min.js"></script>
    <script src="../validate/jquery.validate.js"></script>
    <script src="../validate/validar_imovel.js"></script>



    <p id="quem" style="margin-bottom:40px;">Editar dados do Imóvel</p>;

    <div class="adc-imovel">
        <!--começa o form-->
        <form  name="cadastrar" id="cadastrar" action="" method="POST">



            
            <label>Código:</label><br>
            <input type="text" name="txt_cod" id="txt_cod" value="<?php echo $imovel['imovel_cod'] ?>" size="15" /><br>

            <label>Titulo:</label><br>
            <input type="text" name="txt_title" id="txt_title" value="<?php echo $imovel['imovel_titulo'] ?>" size="15" /><br>
            
            <label>Descrição:</label><br>
            <textarea style="font-family: sans-serif; width: 500px; height: 500px;" name="txt_desc" id="txt_desc" rows="6" cols="60">
    <?php echo $imovel['imovel_desc'] ?>
            </textarea><br>

            <label>Tipo de operação</label><br>
            <select name="txt_tipo" id="txt_tipo">
                <option value="<?php echo $imovel['tipo_id'] ?>"><?php echo $imovel['tipo_nome'] ?></option>

    <?php
    //listando tipos
    $tipos = new Conexao();
    $tipos->ExecSQL("select * from tipo");

    while ($tipo = $tipos->ListarDados()) {


        echo '<option value="' . $tipo['tipo_id'] . '">' . $tipo['tipo_nome'] . '</option>';
    }//fim do loop
    ?>

            </select><br>
            <label>Bairro: </label><br>
        <select name="txt_bairro" id="txt_bairro">
            <option value="<?php echo $imovel['bairro_id'] ?>"><?php echo $imovel['bairro_nome'] ?></option>
            
            
            <?php
            //listando bairros
            $bair = new Conexao();
            $bair->ExecSQL("select * from bairro");
            
            while($bairr = $bair->ListarDados()){
            
            
                echo '<option value="'.$bairr['bairro_id'].'">'.$bairr['bairro_nome'].'</option>'; 
            
            }//fim do loop
            ?>

        </select><br>
        
        <label>Categoria: </label><br>
        <select name="txt_cat" id="txt_cat">
            <option value="<?php echo $imovel['categoria_id'] ?>"><?php echo $imovel['categoria_nome'] ?></option>
            
             <?php
             //listando categoria
            $cat = new Conexao();
            $cat->ExecSQL("select * from categoria");
            
            while($categoria = $cat->ListarDados()){
            
            
                echo '<option value="'.$categoria['categoria_id'].'">'.$categoria['categoria_nome'].'</option>'; 
            
            }//fim do loop
            ?>

        </select><br>
        
        
        
        <label>Estado: </label><br>
        <select name="txt_estado" id="txt_estado">
            <option value="<?php echo $imovel['estado_id'] ?>"><?php echo $imovel['estado_nome'] ?></option>
            
             <?php
             //listando categoria
            $est = new Conexao();
            $est->ExecSQL("select * from estado");
            
            while($estados = $est->ListarDados()){
            
            
                echo '<option value="'.$estados['estado_id'].'">'.$estados['estado_nome'].'</option>'; 
            
            }//fim do loop
            ?>

        </select><br>
        
        
        
        <label>Cidade: </label><br>
        <select name="txt_cidade" id="txt_cidade">
            <option value="<?php echo $imovel['cidade_id'] ?>"><?php echo $imovel['cidade_nome'] ?></option>
            
             <?php
             //listando categoria
            $cid = new Conexao();
            $cid->ExecSQL("select * from cidade");
            
            while($cidade = $cid->ListarDados()){
            
            
                echo '<option value="'.$cidade['cidade_id'].'">'.$cidade['cidade_nome'].'</option>'; 
            
            }//fim do loop
            ?>

        </select><br>



            <label>Suite(s):</label><br>
            <input type="text" name="txt_suite" id="txt_suite" value="<?php echo $imovel['imovel_suite'] ?>" size="15" /><br>

            <label>Banheiro(s):</label><br>
            <input type="text" name="txt_banheiro" id="txt_banheiro" value="<?php echo $imovel['imovel_banheiro'] ?>" size="15" /><br>


            <label>Salas:</label><br>
            <input type="text" name="txt_comodos" id="txt_comodos" value="<?php echo $imovel['imovel_comodos'] ?>" size="15" /><br>

            <label>Quarto(s):</label><br>
            <input type="text" name="txt_quartos" id="txt_quartos" value="<?php echo $imovel['imovel_quarto'] ?>" size="15" /><br>

            <label>Valor:</label><br>
            <input type="text" name="txt_valor" id="txt_valor" value="<?php echo $imovel['imovel_valor'] ?>" size="15" /><br>


            <label>Garagem:</label><br>
            <input type="text" name="txt_garagem" id="txt_garagem" value="<?php echo $imovel['imovel_garagem'] ?>" size="15" /><br>

            




            <label>IPTU:</label><br>
            <input type="text" name="txt_iptu" id="txt_iptu" value="<?php echo $imovel['imovel_iptu'] ?>" size="15" /><br>

            <label>Condominio:</label><br>
            <input type="text" name="txt_condominio" id="txt_condominio" value="<?php echo $imovel['imovel_condominio'] ?>" size="15" /><br>


            <label>Área Util:</label><br>
            <input type="text" name="txt_util" id="txt_util" value="<?php echo $imovel['imovel_area'] ?>" size="15" /><br>

            <label>Área Total:</label><br>
            <input type="text" name="txt_total" id="txt_total" value="<?php echo $imovel['imovel_area_total'] ?>" size="15" /><br>





            


            <div class="botao">
                <input type="hidden" name="txt_id_atual" value="<?php echo $imovel['imovel_id'] ?>">
                <input style="height: 50px; width: 100px;" type="submit" value="Cadastrar" name="btn_cadastrar" id="btn" />
            </div>  




        </form><!--termina o form-->

    </div>


    <?php
endif; //fim do if get imoveis
?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Duas coisas que podes experimentar:

  • Faz um echo de $sql e tenta correr a query directamente no MySQL (ou phpMyAdmin).
  • Verifica se $id_atual tem o valor correcto.

Compartilhar este post


Link para o post
Compartilhar em outros sites
//seto o sql
    $sql = "update imoveis set imovel_cod='{$campo->getCod()}','{$campo->getTitle()}',imovel_desc='{$campo->getDesc()}',imovel_tipo='{$campo->getTipo()}',imovel_suite='{$campo->getSuite()}',imovel_banheiro='{$campo->getBanheiro()}',imovel_comodos='{$campo->getComodos()}',imovel_quarto='{$campo->getQuartos()}',imovel_valor='{$campo->getValor()}',imovel_garagem='{$campo->getGaragem()}',imovel_bairro='{$campo->getBairro()}',imovel_iptu='{$campo->getIptu()}',imovel_condominio='{$campo->getCondominio()}',imovel_area='{$campo->getUtil()}',imovel_area_total='{$campo->getTotal()}',imovel_categoria='{$campo->getCat()}'";

      $sql .= "where imovel_id = '$id_atual' ";

Acredito que o erro esteja aqui, "UPDATE imoveis SET imovel_cod = '{$campo->getCod()}', AQUI TA SEM O CAMPO , imovel_desc..."

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos, saudações.
       
      Por favor, me permita tirar uma dúvida com os amigos.

      Tenho um Formulário onde o Usuário digita todos os Dados necessários.

      Minha dúvida:
      --> como faço após o usuário digitar os dados e salvar, o Sistema chamar uma Modal ou mensagem perguntando se deseja imprimir agora ?

      Grato,
       
      Cesar
    • Por Carcleo
      Tenho uma abela de usuarios e uma tabela de administradores e clientes.
      Gostaria de uma ajuda para implementar um cadastro
       
      users -> name, login, passord (pronta) admins -> user_id, registratiom, etc.. client -> user_id, registratiom, etc...
      Queria ajuda para extender de user as classes Admin e Client
      Olhem como estáAdmin
      <?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class Admin extends User {     use HasFactory;            protected $fillable = [         'name',         'email',         'password',         'registration'     ];      private string $registration;     public function create(         string $name,          string $email,          string $password,         string $registration     )     {         //parent::create(['name'=>$name, 'email'=>$email, 'password'=>$password]);         parent::$name = $name;         parent::$email = $email;         parent::$password = $password;         $this->registration = $registration;     } } User
      <?php namespace App\Models; // use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; use Illuminate\Database\Eloquent\Relations\BelongsToMany; class User extends Authenticatable {     /** @use HasFactory<\Database\Factories\UserFactory> */     use HasFactory, Notifiable;     static string $name;     static string $email;     static string $password;     /**      * The attributes that are mass assignable.      *      * @var list<string>      */     protected $fillable = [         'name',         'email',         'password',     ];          /**      * The attributes that should be hidden for serialization.      *      * @var list<string>      */     protected $hidden = [         'remember_token',     ];     /**      * Get the attributes that should be cast.      *      * @return array<string, string>      */     protected function casts(): array     {         return [             'email_verified_at' => 'datetime',             'password' => 'hashed',         ];     }          public function roles() : BelongsToMany {         return $this->belongsToMany(Role::class);     }       public function hasHole(Array $roleName): bool     {                 foreach ($this->roles as $role) {             if ($role->name === $roleName) {                 return true;             }         }         return false;     }         public function hasHoles(Array $rolesName): bool     {                 foreach ($this->roles as $role) {             foreach ($rolesName as $rolee) {             if ($role->name === $rolee) {                 return true;             }          }         }         return false;     }         public function hasAbility(string $ability): bool     {         foreach ($this->roles as $role) {             if ($role->abilities->contains('name', $ability)) {                 return true;             }         }         return false;     }     } Como gravar um Admin na tabela admins sendo que ele é um User por extensão?
      Tentei assim mas é claro que está errado...
      public function store(Request $request, Admin $adminModel) {         $dados = $request->validate([             "name" => "required",             "email" => "required|email",             "password" => "required",             "registration" => "required"         ]);         $dados["password"] =  Hash::make($dados["password"]);                  $admin = Admin::where("registration",  $dados["registration"])->first();                  if ($admin)              return                    redirect()->route("admin.new")                             ->withErrors([                                 'fail' => 'Administrador já cadastrados<br>, favor verificar!'                   ]);                            $newAdmin = $adminModel->create(                                    $dados['name'],                                    $dados['email'],                                    $dados['password'],                                    $dados['registration']                                 );         dd($newAdmin);         $adminModel->save();         //$adminModel::create($admin);                  return redirect()->route("admin.new")->with("success",'Cadastrado com sucesso');     }  
    • Por violin101
      Caros amigos, saudações.
       
      Gostaria de tirar uma dúvida com os amigos, referente a PDV.
       
      Estou escrevendo um Sistema com Ponto de Vendas, a minha dúvida é o seguinte, referente ao procedimento mais correto.

      Conforme o caixa vai efetuando a venda, o Sistema de PDV já realiza:
      a baixa direto dos produtos no estoque
      ou
      somente após concretizar a venda o sistema baixa os produtos do estoque ?
       
      Grato,
       
      Cesar
       
    • Por violin101
      Caros amigos do grupo, saudações e um feliz 2025.
       
      Estou com uma pequena dúvida referente a Teclas de Atalho.

      Quando o Caps Lock está ativado o Comando da Tecla de Atalho não funciona.
      ou seja:
      se estiver para letra minúscula ====> funciona
      se estiver para letra maiúscula ====> não funciona
       
      Como consigo evitar essa falha, tanto para Letra Maiúscula quanto Minúscula ?

      o Código está assim:
      document.addEventListener( 'keydown', evt => { if (!evt.ctrlKey || evt.key !== 'r' ) return;// Não é Ctrl+r, portanto interrompemos o script evt.preventDefault(); });  
      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Por favor, poderiam me ajudar.

      Estou com a seguinte dúvida:
      --> como faço para para implementar o input código do produto, para quando o usuário digitar o ID o sistema espera de 1s a 2s, sem ter que pressionar a tecla ENTER.

      exemplo:
      código   ----   descrição
           1       -----   produto_A
       
      Grato,
       
      Cesar
×

Informação importante

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