Seguinte, a principio está tudo corrento no código, quando é enviado a query para o banco esta enviando o valor booleano que eu enviei, entretanto a informação nao chega no banco, fica sempre true
*adiciona-produto(quando envia pro banco):
if(array_key_exists('usado', $_POST)){
$usado = "true";
}else{
$usado = "false";
}
if($nome != null && $preco !=null){
if (insereProduto($conexao, $nome, $preco, $descricao, $categoria_id, $usado)) { ?>
<p class='text-success'> Produto <?php echo $nome;?> , R$<?php echo $preco; ?> adicionado com sucesso!</p><?php
}
}else{ ?>
<p class='text-danger'> Produto <?php echo $nome;?> não foi cadastrado!</p><?php
//echo mysqli_error($conexao); //-->nao encontra funçao
}
*banco-produto(funções):
function insereProduto ($conexao, $nome, $preco, $descricao, $categoria_id, $usado){
$query = "INSERT INTO produtos (nome, preco, descricao, categoria_id, usado) VALUES "."('{$nome}', '{$preco}', '{$descricao}',
'{$categoria_id}', '{$usado}')";
$resultadoParaBanco = mysqli_query($conexao, $query);
echo $query;
return $resultadoParaBanco;
}
*banco:
CREATE DATABASE loja;
USE loja;
CREATE TABLE produtos(
id INTEGER AUTO_INCREMENT PRIMARY KEY,
nome VARCHAR (255),
preco DECIMAL (10,2),
descricao TEXT,
categoria_id INTEGER,
usado BOOLEAN
);
INSERT INTO produtos (nome, preco, descricao, categoria_id, usado) values ('VW-GOL', 20000.00, 'Muito Bonito', 2, 1),
('VW-FOX', 25000.00, 'Legal', 2, 0),
('GM-CELTA', 15000.00, '', 2, 1)
;
CREATE TABLE categorias (
id INTEGER AUTO_INCREMENT PRIMARY KEY,
nome VARCHAR(255)
);
INSERT INTO categorias (nome) VALUES ('doces'),
('carros'),
('material escolar'),
('outros')
;
select * from produtos;