Ir para conteúdo
Fórum Script Brasil
  • 0

duvida por que meu codigo não esta recebendo os dados POST no controller


Braz Mendes

Pergunta

<div class="modal fade" id="cadastrarModal" tabindex="-1" aria-labelledby="cadastrarModal" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header bg-info">
                <h5 class="modal-title" id="cadastrarModal">Cadastrar Agendamento</h5>
                <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
            </div>
            <div class="modal-body">
 
            <form method="POST" id="formCadEvento">
                <div class="row mb-3">
                    <label for="title" class="col-sm-2 col-form-label">TÍTULO:</label>
                    <div class="col-sm-10">
                        <input type="text" name="title" class="form-control" id="title">
                    </div>
                </div>
                <div class="row mb-3">
                    <label for="start" class="col-sm-2 col-form-label">INÍCIO:</label>
                    <div class="col-sm-10">
                        <input type="datetime-local" name="start" class="form-control" id="start">
                    </div>
                </div>
                <div class="row mb-3">
                    <label for="end" class="col-sm-2 col-form-label">FIM:</label>
                    <div class="col-sm-10">
                        <input type="datetime-local" name="end" class="form-control" id="end">
                    </div>
                </div>
                <button class="btn btn-info" id="btnRegistrar" type="submit">Agenda</button>
               
            </form>                
 
            </div>
        </div>
    </div>
</div>
 
 
 
 
------------------------------------------------
controler
 
public function add() {
        $data = array();
        $u = new Users();
        $u->setLoggedUser();
        $company = new Companies($u->getCompany());
        $data['company_name'] = $company->getName();
        $data['user_email'] = $u->getEmail();
 
        if($u->hasPermission('agenda_view')) {
            $e = new agenda();
 
            if(isset($_POST['title']) && !empty($_POST['title'])) {
                $title = addslashes($_POST['title']);
                $start = addslashes($_POST['start']);
                $end = addslashes($_POST['end']);
 
                $e->add($title, $start, $end, $u->getCompany());
                header("Location: ".BASE_URL."/agenda");
            }
 
            $this->loadTemplate('home', $data);
        }
    }
 
 
 
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

É porque você esqueceu de definir a rota do <form> através da propriedade action.
A sintaxe correta é
<form method=post action=controller.add>

O problema é como o conteúdo do <input> vai chegar até aquela classe, isso vai depender do roteador.

Eu tenho um código php que trabalha com a instancia de classe, e assim eu defino o action assim:
<form method=post action=?controller.add>, ele força o navegador a jogar tudo para o arquivo index.php e de lá o roteador vai procurar a classe e o método correspondente.

Enfim o roteador é um capítulo bem espinhoso que você precisa dominar antes de usar o <form>

Mas essa fase já passou para mim. Eu não preciso mais usar o <form> para mandar o conteúdo do <input> para a variável $titulo, tem um rapaz que inventou o Livewire no Laravel, ele inventou o <input wire:model='titulo'>, assim que você dá o enter a variável $titulo já está definido. É uma mágica surpreendente!

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,4k
    • Posts
      652,2k
×
×
  • Criar Novo...