Ir para conteúdo

POWERED BY:

Arquivado

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

kinect

Excluindo registro selecionado de um banco de dados

Recommended Posts

Boa noite, pessoal!

 

Estou tentando visualizar a solução de uma ideia, mas não sei como proceder.

 

Imaginem uma página php que lista vários livros. Estes livros são dispostos na página principal em quadros, igualmente espaçados horizontalmente e, abaixo de cada linha, haveria opção de remover os livros já lidos, como se fosse assim:

 

Célula livro 1 Célula livro 2 Célula livro 3 Célula livro 4 Célula livro 5 Célula livro 6

 

Link remover livro

 

A questão de mostrar os livros cadastrados no banco de dados na página consigo resolver com o select e a de excluir com o drop num banco mysql. O que eu gostaria de fazer é clicar em cima de um dos livros, mantê-lo selecionado, e depois clicar no link remover livro, que removeria o livro "onclick". Queria fazer algo do tipo no link remover livro: if $celulalivro está selecionada DROP $celulalivro, mas não imagino como o link pode entender qual célula estaria selecionada. A única coisa que conseguiria fazer é um link abaixo de cada livro para excluir do banco o livro respectivo, mas um link único funcionando com o livro selecionado não tenho ideia.

 

Teria como resolver isso apenas com php, ou precisaria de CSS, javascript ou outra coisa ainda?

 

Desde já, agradeço.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

O PHP vai apenas excluir, o que vem antes, ou seja, o clique e etc, isto é totalmente client-side (css, js).

 

Provavelmente você consiga isto com jquery.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom Dia,

 

Eu aconselharia utilizar jquery/ajax para efectuar essa ação, pois PHP é executado em server-side e não tem como fazer ações de client-side em tempo real para detectar se está "onClick" !

Espero ter ajudado.

 

Atenciosamente,

Bruno Miguel

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia!

 

Bom minha ideia eu faria usando ajax.

 

Cada livro seu estaria dentro de um for, invés de fazer um link faça um button que ao clicar vai ver os livros que estão checados e vai poder excluir.

 

faça isso utilizando ajax que ele manda para o PHP e a exclusão será feita, como ajax a página nem vai atualizar ele limpa numa boa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado pessoal. É bom ter uma diretriz do que é possível. Sou novo na área: até pouco tempo atrás acharia que jquery seria o nome de um pokemon e ajax o nome de um produto de limpeza. Não tenho nada criado ainda, kikombat. O que vocês indicam pra ler/assitir sobre jquery e ajax?

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • 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 ILR master
      Fala galera, tudo certo?
       
      Seguinte: No servidor A estou tentando fazer uma consulta com o servidor B, mas está dando erro.
      Estou usando o mesmo código de conexão do servidor B que funciona perfeitamente, mas no servidor A, dá erro.
      Segue código:
       
      $host = 'servidor B';
      $user = 'user';
      $pass = '********';
      $db   = 'banco';
       
      // conexão e seleção do banco de dados
      $conexao = mysqlI_connect($host, $user, $pass, $db);
      mysqlI_set_charset($conexao,"utf8");
      //print "Conexão rodando e OK!"; 
      //mysqlI_close($conexao);
       
      Alguém pode me ajudar?
    • 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.