Erro ao cadastrarArray ( [0] => 42S22 [1] => 1054 [2] => Unknown column 'name' in 'field list' )

1 resposta
php
R

Estou tentando criar um sistema de cadastro/login, tá tudo prontinho, porém ao cadastrar um novo usuário recebo esse erro:

Erro ao cadastrarArray ( [0] => 42S22 [1] => 1054 [2] => Unknown column ‘name’ in ‘field list’ )

Eu sou iniciante em PHP, e estou tentando utilizar PDO pois sei que o MySQL foi descontinuado e já queria estar atualizado, pesquisei e descobri que pode ser um erro simples de aspas. Porém eu já tentei mas não consigo resolver, essa foi a solução da pergunta de outro usuário que achei: "Eu procurei e descobri que, como a coluna de nome é um campo varchar, a inserção exige aspas simples, porque o valor a ser passado é a string.

INSERIR EM vídeos SET id_aula = {$ id_aula}, name = '{$ name}'"

Ele acabou de adicionar as aspas simples para enviar o valor do nome como uma string."

Mas eu não consigo identificar de qualquer maneira, alguém por favor pode me ajudar por favor eu tô a muito tempo procurando ajuda mas ninguém consegue ou não sabe.

Esse é meu código que creio ser onde está o erro (por que é nela que o erro aparece depois de dar submit no formulário de cadastro):

<?php
 
require_once 'init.php';
 
// pega os dados do formuário
$name = isset($_POST['name']) ? $_POST['name'] : null;
$email = isset($_POST['email']) ? $_POST['email'] : null;
$senha = isset($_POST['senha']) ? $_POST['senha'] : null;
 
// validação (bem simples, só pra evitar dados vazios)
if (empty($name) || empty($email) || empty($senha))
{
    echo "Volte e preencha todos os campos";
    exit;
}
 
// insere no banco
$PDO = db_connect();
$sql = "INSERT INTO users(name, email, senha) VALUES(:name, :email, :senha)";
$stmt = $PDO->prepare($sql);
$stmt->bindParam(':name', $name);
$stmt->bindParam(':email', $email);
$stmt->bindParam(':senha', $senha);
 
if ($stmt->execute())
{
    header('Location: index.php');
}
else
{
    echo "Erro ao cadastrar";
    print_r($stmt->errorInfo());
}

1 Resposta

R

No erro tá falando que não existe a coluna “name” la no seu banco. O nome é esse mesmo?

Criado 27 de fevereiro de 2019
Ultima resposta 28 de fev. de 2019
Respostas 1
Participantes 2