Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera, estou tentando criar um sistema de cadastro de produtos aqui, seguindo esse tutorial:
http://faael.net/upload-simples-de-imagem-com-php-mysql/
Ja li ate os comentarios desse artigo, e nao consegui resolver o problema.
Quando abro a pagina pra fazer o teste do sistema ja aparece um erro:
Notice: Undefined index: cadastrar in C:\Arquivos de programas\EasyPHP 3.0\www\cadastro\cadastro.php on line 7
Dai eu tento cadastrar, a pagina da um refresh, o erro some, mas nao cadastra nada no banco de dados.
A linha 7 é essa:
if ($_POST['cadastrar']) {
sera que tem alguma coisa av com essa outra linha?
<input type="submit" name="cadastrar" value="Cadastrar" />
Bom, vou disponibilizar o codigo inteiro, ai fica mais facil.
<?php
//Conexão com o banco da dados
$conn = @mysql_connect("localhost", "123", "123") or die ("Problemas na conexão");
$db = @mysql_select_db("bancodedados", $conn) or die ("Problemas na conexão");
// Se o usuario clicou no botao cadastrar efetua as ações
if ($_POST['cadastrar']) {
//Recupera os dados do campo
$nome = $_POST['nome'];
$descricao = $_POST['descricao'];
$foto = $_FILES['foto'];
//Se a foto estiver sido selecionada
if (!empty($foto['name'])) {
//Largura maxima em pixels
$largura = 150;
//Altura maxima em pixels
$altura = 180;
//Tamanho maximo do arquivo em bytes
$tamanho = 1000000;
//Verifica se o arquivo é uma imagem
if(!eregi("^image\/(pjpeg|jpeg|png|gif|bmp)$", $foto["type"])){
$error[1] = "Isso não é uma imagem";
}
//Pega as dimensões da imagem
$dimensoes = getimagesize($foto["tmp_name"]);
//Verifica se a largura da imagem é maior que a largura permitida
if($dimensoes[0] > $largura){
$error[2] = "A largura da imagem não deve ultrapassar ".$largura." pixels";
}
//Verifica se a altura da imagem é maior que a altura permitida
if($dimensoes[1] > $altura){
$error[3] = "Altura da imagem nao deve ultrapassar ".$altura." pixels";
}
//Verifica se o tamanho da imagem é maior que o tamanho permitido
if($foto["size"] > $tamanho){
$error[4] = "A imagem deve ter no maximo ".$tamanho." bytes";
}
//Se nao houver nenhum erro
$error = array();
if (count($error) == 0) {
//Pega extensao da imagem
preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $foto["name"], $ext);
//Gera um nome unico para imagem
$nome_imagem = md5(uniqid(time())) . "." . $ext[1];
//Caminho onde ficará a imagem
$caminho_imagem = "fotos/" . $nome_imagem;
//Faz o upload da imagem para o seu respectivo caminho
move_uploaded_file($foto["tmp_name"], $caminho_imagem);
//Insere os dados no banco
$sql = mysql_query("INSERT INTO produtos VALUES ('', '".$nome."', '".$descricao."', '".$nome_imagem."')");
//Se os dados forem inseridos com sucesso
if ($sql) {
echo "Cadastro efetuado com sucesso";
}
}
// Se houver mensagens de erro, exibe-as
if (count($error) != 0) {
foreach ($error as $erro) {
echo $erro . "<br />";
}
}
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Cadastro de usuário</title>
</head>
<body>
<h1>Cadastro de Produtos</h1>
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data" name="cadastro">
Nome: <br />
<input type="text" name="nome" /><br /><br />
Descrição: <br />
<input type="text" name="descricao" /><br /><br />
Foto: <br />
<input type="file" name="foto" /><br /><br />
<input type="submit" name="cadastrar" value="Cadastrar" />
</form>
<hr />
<h1>Produtos cadastrados</h1>
<?php//Exibe as informaçoes de cada usuario
while ($produto = mysql_fetch_object($sql)) {
//Exibimos a foto
echo "<img src='fotos/".$produto->foto."' alt='Foto de exibição' /><br />";
//Exibimos nome e descriçao
echo "<b>Nome:</b> " . $produto->nome . "<br />";
echo "<b>Descrição:</b> " . $produto->descricao . "<br /><br />";
}
?>
</body>
</html>
Galera.. mtoooooo obrigado pela ajuda
Abraçooos
Carregando comentários...