Laravel - If antes de insert ou update[RESOLVIDO]

gente, estou tentando fazer um IF antes de realizar um insert ou update no banco,porém sempre cai na condição verdadeira.
segue parte do código…

$pac = Paciente::find($id);
 $pac->pac_cpf_responsavel = $request->input('cpfresponsavel');
        if($request->input('status')==2){
        $pac->pac_data_encerramento =  new DateTime();
        }
        $pac->save();
         return redirect()->action(
        'PacienteControlador@edit', ['pac_codigo' => $pac->pac_codigo]
        );

Quando voce debuga $request->input('status') retorna o que? Se é 2 entao está certo retornar true. Fora isso, seja mais específico.

a ideia é o seguite, se o status for igual 2 ele irá efetuar o update no banco com a data e hora atual. caso contrário não irá fazer nada.
porém sempre está dando update…

E o status está vindo como?

o status está gravando 3 no banco. não sei pq está caindo na condição verdadeira…

Debuga pra ver o que realmente vem no seu código.

E se não é pra atualizar nada no banco se o status nao for 2, esse save() deveria estar dentro if. De qualquer tem que verificar qual status está sendo retornado nesse if, você realmente está debugando?

depois de muito tempo descobrir o que era…
a lógica está correta, porém quando fica vazio é exibido uma data 01-01-1970 00:00:00
devido as propriedade de q definir no meu input, porém lá no banco está null.

<input type="text" class="form-control datepicker" name="dtencerramento" id="dtencerramento" placeholder="DD/MM/YYYY" 
                                   value="{{date('d-m-Y H:i:s', strtotime(old('dtencerramento', $pac->pac_data_encerramento))) }}" disabled> 

devido a isso tive que fazer um if.
<input type="text" class="form-control datepicker" name="dtencerramento" id="dtencerramento" placeholder="DD/MM/YYYY" 
                                    @if(!empty($pac->pac_data_encerramento))
                                  value="{{date('d/m/Y H:i:s', strtotime(old('dtencerramento', $pac->pac_data_encerramento))) }}" 
                                  @endif ''
                                  disabled>

Se tivesse debugado já saberia na hora que a lógica do if estava certa e que o problema estaria em outro lugar.

1 curtida