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

Dúvida no Ex. 1 da Aula 11 - Subindo a aplicação para um Servidor

Problema ao adicionar produto

subi aplicação igual ao vídeo porem quando vou cadastrar o produto dá um erro e não consigo localizar.

A mensagem de erro é a seguinte:

Warning: mysql_error() expects parameter 1 to be resource, object given in /home/u435196328/public_html/portifolio/exemplo1/loja/adiciona-produto.php on line 31 O Produto Teclado, 9000 Não foi Adicionado com Sucesso:

Link da minha aplicação:

http://newsoft.pe.hu/portifolio/exemplo1/loja/index.php

o código da minha pagina adiciona produto:

<?php include("cabecalho.php"); ?> <?php include("conecta.php"); ?> <?php include("banco-produto.php");?>

<?php

$nome = $_POST["nome"]; $preco = $_POST["preco"]; $descricao = $_POST['descricao']; $categoria_id = $_POST['categoria_id']; if(array_key_exists('usado', $_POST)){ $usado = "true";

}else { $usado = "false";

}

if(insereProduto($conexao, $nome , $preco, $descricao, $categoria_id, $usado)) { ?>

O Produto <?php echo $nome; ?>, <?php echo $preco; ?> foi Adicionado com Sucesso!

<?php } else { $msg = mysql_error($conexao);

?>

O Produto <?php echo $nome; ?>, <?php echo $preco; ?> Não foi Adicionado com Sucesso: <?php echo $msg; ?>

<?php }

?>

<?php include("rodape.php"); ?>


codigo da minha pagina conecta.php

<?php

$conexao = mysqli_connect("mysql.hostinger.com.br", "u435196328_loja", "lojaloja", "u435196328_loja");

4 respostas

Esses são os scripts de criação das tabelas e inserção que utilizei

create table produtos ( id integer auto_increment primary key, nome varchar(255), preco decimal(10,2), categoria_id integer, usado boolean default false );

create table categorias ( id integer auto_increment primary key, nome varchar(255) );

insert into categorias (nome) values ("esporte"), ("escola"), ("mobilidade"), ("guloseimas");

$conexao = mysqli_connect("mysql.hostinger.com.br", "u435196328_loja", "lojaloja", "u435196328_loja");

solução!

Oi Isac

Sua tabela produto não tem uma o campo descrição, você está fazendo o POST dele pelo que vi.

Conferê se tem esse campo no banco ? Se for isso, basta você fazer um alter table add column (descricao varchar(255);

Qualquer coisa me informe aqui.

abraço

Caio Foi exatamente isso, muito obrigado!

O problema é que, na vídeo-aula, o professor esqueceu de incluir a descrição e não adicionou depois e misteriosamente o código dele não deu erro.