"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Editando e atualizando notas usando o método de solicitação PATCH

Editando e atualizando notas usando o método de solicitação PATCH

Publicado em 19/08/2024
Navegar:594

Editing and Updating Notes using PATCH Request Method

Como acompanhamento da criação de novas notas usando formulários e métodos de solicitação, exploraremos agora como editar e atualizar notas existentes no banco de dados usando o método de solicitação PATCH.

Quando um usuário deseja editar uma nota, precisamos fornecer uma maneira para ele acessar a tela de edição. É aqui que entra o botão de edição.

Adicionando um botão de edição

Primeiro, precisamos adicionar um botão de edição abaixo da nota na tela de nota única em show.view.php removendo o código do botão de exclusão do arquivo. Este botão moverá o usuário para a tela de edição.


O botão de edição é colocado na seção de rodapé da página de exibição de notas. Ao ser clicado, redireciona o usuário para a tela de edição, passando o ID da nota como parâmetro na URL.

Editando notas

O arquivo edit.php controla o processo de edição. Ele recupera a nota do banco de dados e autoriza o usuário a editá-la. Se o usuário estiver autorizado, a tela de edição será exibida, permitindo que o usuário faça alterações na nota.

query('select * from notes where id = :id', [
    'id' => $_GET['id']
])->findOrFail();

authorize($note['user_id'] === $currentUserId);

view("notes/edit.view.php", [
    'heading' => 'Edit Note',
    'errors' => [],
    'note' => $note
]);

O arquivo edit.php usa a classe Database para recuperar a nota do banco de dados. Em seguida, verifica se o usuário está autorizado a editar a nota comparando o user_id com o currentuserID. Se autorizado, a tela de edição será exibida.

Editar visualização de notas

O arquivo edit.view.php contém o código para exibir o corpo da nota para edição, com dois botões: Atualizar e Cancelar.

  • Botão Atualizar: envia a nota atualizada ao servidor e armazena-a no banco de dados

  • Botão Cancelar: cancela o processo de edição e redireciona o usuário de volta para a tela de notas.


= $errors['body'] ?>

Cancel

A visualização de edição da nota exibe o corpo da nota em uma área de texto, permitindo ao usuário fazer alterações. O botão de atualização envia a nota atualizada ao servidor e a armazena no banco de dados.

Atualizando Notas

Para atualizar uma nota, precisamos criar um novo arquivo chamado update.php que verifica a validação da nota e também verifica a autorização do usuário. Este arquivo permitirá apenas que usuários autorizados visualizem e editem notas que já estão presentes no banco de dados.

query('select * from notes where id = :id', [
    'id' => $_POST['id']
])->findOrFail();

// Check authorization
authorize($note['user_id'] === $currentUserId);

// Check validation
$errors = [];
if (!Validator::string($_POST['body'], 1, 100000)) {
    $errors['body'] = 'A body of no more than 1,000 characters is required.';
}

// if no validation errors, then update
if (count($errors)) {
    return view('notes/edit.view.php', [
        'heading' => 'Edit Note',
        'errors' => $errors,
        'note' => $note
    ]);
}

$db->query('update notes set body = :body where id = :id', [
    'id' => $_POST['id'],
    'body' => $_POST['body']
]);

// redirect the user
header('location: /notes');
die();

Adicionando Rotas

Para habilitar a edição e atualização de notas, precisamos adicionar as seguintes rotas em route.php:

$router->get('/note/edit', 'controllers/notes/edit.php');
$router->patch('/note', 'controllers/notes/update.php');

Essas rotas permitirão a edição e atualização de notas usando o método de solicitação PATCH.

Como funciona

Quando um usuário deseja editar uma nota, o usuário será levado à tela de edição, onde poderá fazer alterações na nota. Quando um usuário enviar alterações, o arquivo update.php será chamado. Este arquivo irá verificar se o usuário está autorizado a editar a nota e se a validação da nota está correta. Se ambas as verificações forem aprovadas, a nota será atualizada no banco de dados e o usuário será redirecionado de volta para a tela de notas. Se alguma das verificações falhar, o usuário será redirecionado de volta à tela de edição com mensagens de erro.

Seguindo estas etapas, um usuário pode editar e atualizar facilmente a nota usando o método de solicitação PATCH.

Espero que você tenha entendido claramente.

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/ghulam_mujtaba_247/editing-and-updating-notes-using-patch-request-method-14k7?1 Se houver alguma violação, entre em contato com [email protected] para excluir isto
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3