Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Enviando valor ''null'' do php para MySql

Bom dia, tenho essa função que salva um novo 'eletricista' no meu banco de dados

    public function inserir()
    {
        $query = "INSERT INTO eletricista (elematricula, elenome, elefilial, elefuncao, elecpf, eleequipe,elestatus)
                  VALUES (:matricula, :nome, :filial, :funcao, :cpf, :equipe, :status)";
        $conexao = Conexao::pegarConexao();
        $stmt = $conexao->prepare($query);
        $stmt->bindValue(':matricula', $this->elematricula);
        $stmt->bindValue(':nome', $this->elenome);
        $stmt->bindValue(':filial', $this->elefilial);
        $stmt->bindValue(':funcao', $this->elefuncao);
        $stmt->bindValue(':cpf', $this->elecpf);
        $stmt->bindValue(':equipe', $this->eleequipe);
        $stmt->bindValue(':status', $this->elestatus);
        $stmt->execute();
    }

O problema é que [eleequipe] é chave estrangeira da tabela equipe, e nem sempre o eletricista ja vai começar em uma equipe...

Já tentei fazer isso para caso o usuário nao selecionasse nenhuma equipe... Mas é feita uma reclação, dá um erro e o usuario não é inserido

<option value="">SELECIONAR EQUIPE</option>

se no value eu colocar [null] vou estar passando uma string com esse valor 'null' e tambem vai da erro... como devo proceder ?

2 respostas
solução!

Se o campo aceita valor nulo, creio que isto deve resolver:

bindValue(':param', $n = null, PDO::PARAM_INT);

A solução que encontrei foi remover a FK , uma pena :(