2
respostas

Não consigo fazer o INSERT

Estou assistindo à aula de php web, pelo que entendi está sendo desenvolvido um INSERT com OOP para adicionar conteúdo a um banco de dados, estou tentando recriar junto as aulas mais aparece uma mensagem de erro.

Catchable fatal error: Argument 1 passed to Usuarios::adicionar() must be an instance of string, string given, called in C:\Program Files (x86)\EasyPHP-Devserver-17\eds-www\plus.digietalconference.com.br\pages\admin\adicionar-novo-usuario.php on line 18 and defined in C:\Program Files (x86)\EasyPHP-Devserver-17\eds-www\plus.digietalconference.com.br\includes\Usuarios.php on line 12

Não sei bem para aonde prosseguir, se alguém conseguir me ajudar agradeço.

2 respostas

Leonardo poderia postar o codigo aqui? Pelo oque vi da stack é algum erro de parametro

class Usuarios{ private $mysql;

public function __construct(mysqli $mysql)
{
    $this->mysql = $mysql;
}

public function adicionar(string $nome, string $sobrenome, string $email, string $senha, string $nivel)
{
    $insereUsuario = $this->mysql->prepare('INSERT INTO usuarios VALUES(?,?,?,?,?,?,?,?)');
    $insereUsuario->bind_param('ssssssss', $nome, $sobrenome, $email, $senha, $email, $nivel, '1', '2019');
    $insereUsuario->execute();
}


public function exibeTodosUsuarios()
{
    $resultado = $this->mysql->query('SELECT id, nome, sobrenome, email, nivel, cadastro FROM usuarios');
    $usuarios = $resultado->fetch_all(MYSQLI_ASSOC);
    return $usuarios;
}
}