ciao!

sicuramente sono di coccio io, ma ci sono cose che non capisco.
ho questa funzione:
codice:
  public function login() {
    $data = json_decode(file_get_contents("php://input"), true);


    if (!empty($data)) {
      $today = date("Y-m-d H:i:s");
      $email = trim($data['u_email']);
      $password = $data['u_password'];


      $query = Utente::query()
          ->where('u_email', $email)
          ->where('u_password', $password)
          ->where('u_attivo', 1)
          ->first();


      if ($query) {
        var_dump($query);


        $usersModuli = UtenteModuli::query()
            ->where('user_fk', $query->id)
            ->join('moduli', 'mod_id', '=', 'modulo_fk')
            ->get();


        Utente::where('u_id', $query->id)
            ->update(['u_data_login' => $today]);


        return json_encode(array(
            "res" => "ok",
            "message" => "Login eseguito correttamente",
            "jwt" => $this->jwtHelpers->createToken(),
            "utente" => $query,
            'moduli' => $usersModuli
        ));


      } else {
        return json_encode(array(
            "res" => "ko",
            "message" => "Credenziali errate",
        ));
      }


    } else {
      return json_encode(array(
          "res" => "ko",
          "message" => "Dati mancanti",
      ));
    }
il var_dump, e cmq vedo i dati in postman.
solo che le due query sotto è come se non venissero eseguite.
infatti se le eseguo da sole funzionano.
messe li no.