我的问题是我的数据库没有错误,但仍然忽略我的插入、选择等。 所以我尝试了 var_dump() ,它为所有变量提供了 NULL 。这是我的连接查询:
$this->conexao = new mysqli('localhost:3307','root','', 'construsite');
我认为这是错误的:
public 'conexao' =>
object(mysqli)[2]
public 'affected_rows' => null
public 'client_info' => null
public 'client_version' => null
public 'connect_errno' => null
public 'connect_error' => null
public 'errno' => null
public 'error' => null
public 'error_list' => null
public 'field_count' => null
public 'host_info' => null
public 'info' => null
public 'insert_id' => null
public 'server_info' => null
public 'server_version' => null
public 'stat' => null
public 'sqlstate' => null
public 'protocol_version' => null
public 'thread_id' => null
public 'warning_count' => null
我的插入函数被忽略:
public function registro(){
//comando sql para inserir novo cliente
$comando = "INSERT INTO clientes(id, nome_cliente, email_cliente, telefone_cliente, senha_cliente, data_nasc_cliente) "
. "VALUES (NULL, '$this->nome_cliente', '$this->email_cliente', '$this->telefone_cliente', '$this->senha_cliente', STR_TO_DATE( '$this->data_nasc_cliente', '%Y/%d/%m')";
//executa o comando
$registro_resultado = $this->conexao->query($comando); //executa o comando
return $registro_resultado;
}
我试图在谷歌和这里找到,但我找不到。 (抱歉我的英语不好!!)
最佳答案
Id为主键,主键不接受null。如果您的主键自动递增,则从插入查询中删除 id。
$comando = "INSERT INTO clientes(nome_cliente, email_cliente, telefone_cliente, senha_cliente, data_nasc_cliente) "
. "VALUES ('$this->nome_cliente', '$this->email_cliente', '$this->telefone_cliente', '$this->senha_cliente', STR_TO_DATE( '$this->data_nasc_cliente', '%Y/%d/%m'))";
关于php - MySqli 返回 NULL 值并且无法插入或选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34158279/