Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) PROBLEMA COM UPLOAD DE IMAGEM + BANCO DE DADOS


kel777

Pergunta

Bom dia pessoal, eu sou novo no fórum e novo em PHP.

É o seguinte, eu fiz um sistema de postagem, onde eu escrevo o título da postagem o corpo e tudo mais (como se fosse um blog), mais eu gostaria que junto com a postagem eu também pudesse adicionar uma imagem, pesquisei algo no Google e achei um script que parecia simples. mais quando vou acrescentar ao script que já esta pronto, não funciona,

segue o código PHP:

<?php

$host="localhost"; // Host name 
$username="proativa_blog"; // Mysql username 
$password="senha"; // Mysql password 
$db_name="proativa_blog"; // Database name 
$tbl_name="forum_question"; // Table name 

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// get data that sent from form 
$topic=$_POST['topic'];
$detail=$_POST['detail'];
$detail=$_POST['complete'];
$foto = $_FILES["foto"];
$name=$_POST['name'];
$email=$_POST['email'];

$datetime=date("d/m/y h:i:s"); //create date time
           
               // Se a foto estiver sido selecionada
           if (!empty($foto["name"])) {
        
        // Pega extensão da imagem
        preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $foto["name"], $ext);

            // Gera um nome único para a imagem
            $nome_imagem = md5(uniqid(time())) . "." . $ext[1];

            // Caminho de onde ficará a imagem
            $caminho_imagem = "fotos/" . $nome_imagem;

            // Faz o upload da imagem para seu respectivo caminho
            move_uploaded_file($foto["tmp_name"], $caminho_imagem);
        }
    
        // Se houver mensagens de erro, exibe-as
        if (count($error) != 0) {
            foreach ($error as $erro) {
                echo $erro . "<br />";
            }
        }

$sql="INSERT INTO $tbl_name(topic, detail, name, email, datetime)VALUES('$topic', '$detail', '$complete', '$nome_imagem', '$name', '$email', '$datetime')";
$result=mysql_query($sql);

if($result){
echo "Successful<BR>";
echo "<a href=main_forum.php>View your topic</a>";
}
else {
echo "ERROR";
}
mysql_close();
?>

Alguém pode me ajudar a localizar o erro? Desde-já agradeço a todos!

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
Não dá certo significa exatamente o que? Não salva a imagem no servidor? Não salva os dados no BD?

Então amigo, não faz o upload, e nem salva no Banco de Dados, simplesmente não acontece nada, só o restante do conteúdo salva no banco.

Se quiser ver como ta ficando é só entrar http://proativa.org/iprism/blog.php

(não ta funcionando ao abrir o link porque eu não editei essa parte)

Link para o comentário
Compartilhar em outros sites

  • 0
Posta o formulário.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en-US" xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head>
    <title>.:: IPRI - IGREJA PRESBITERIANA RENOVADA INTERNACIONAL::.</title>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <link rel="shortcut icon" href=../"css/images/favicon.ico" />
    <link rel="stylesheet" href="../css/style.css" type="text/css" media="all" />
    <!--[if IE 6]>
        <link rel="stylesheet" href="css/ie6.css" type="text/css" media="all" />
    <![endif]-->
    <link rel="stylesheet" href="../js/fancybox/jquery.fancybox-1.3.1.css" type="text/css" media="screen" /><style type="text/css">
    .obs {
    font-size: 10px;
    color: #666;
}
    </style>
    
    <script type="text/javascript" src="../js/jquery.jcarousel.js"></script>
    <script type="text/javascript" src="../js/fancybox/jquery.fancybox-1.3.1.js"></script>
    <script type="text/javascript" src="../js/jquery-func.js"></script>
<script type="text/javascript" language="javascript">

/* 
Funcoes para contar, exibir e limitar caracteres

*/
function mostrarResultado(box,num_max,detailspan){
    var contagem_carac = box.length;
    if (contagem_carac != 0){
        document.getElementById(detailspan).innerHTML = contagem_carac + " caracteres digitados";
        if (contagem_carac == 1){
            document.getElementById(detailspan).innerHTML = contagem_carac + " caracter digitado";
        }
        if (contagem_carac >= num_max){
            document.getElementById(detailspan).innerHTML = "Limite de caracteres excedido!";
        }
    }else{
        document.getElementById(detailspan).innerHTML = "Ainda não temos nada digitado..";
    }
}

function contarCaracteres(box,valor,detailspan){
    var conta = valor - box.length;
    document.getElementById(detailspan).innerHTML = "Você ainda pode digitar " + conta + " caracteres";
    if(box.length >= valor){
        document.getElementById(detailspan).innerHTML = "Opss.. você não pode mais digitar..";
        document.getElementById("detail").value = document.getElementById("detail").value.substr(0,valor);
    }    
}

</script>

</head>
<body>
<!-- Header -->
<div id="header">
    <div class="shell">
        <!-- Logo -->
        <h1 id="logo"><a href="../index.php">PIXELTHIS</a></h1>
        <!-- /Logo -->
        
        <!-- Navigation -->
        <div id="navigation">
            <ul>
                <li><a href="../index.php">INÍCIO</a></li>
                <li><a href="../biblia.php">BÍBLIA ONLINE</a></li>
                <li><a class="../active">PEDIDO DE ORAÇÃO</a></li>
                <li><a href="../blog.php">BLOG</a></li>
                <li><a href="../testemunhos.php">TESTEMUNHOS</a></li>
                <li><a href="../contato.php">CONTATO</a></li>
                <li><a href="../area_php">ÀREA DO MEMBRO</a></li>
            </ul>
        </div>
        <!-- /Navigation -->
        <div class="cl">&nbsp;</div>
      <!-- Socials -->
        <div class="socials">
            <a href="http://facebook.com/iprism/" class="socials-facebook" title="Visite nossa página no Facebook">facebook</a>
        </div>
        <!-- /Socials -->
    </div>
</div>
<!-- /Header -->

<!-- Main -->
<div id="main">
    <div class="bg-top">
        <div class="shell">
        <? include ("../includes/verciculos.html") ?>
<!--AQUI-->
<?php

$host="localhost"; // Host name 
$username="proativa_oracao"; // Mysql username 
$password="q4w3e2r1"; // Mysql password 
$db_name="proativa_oracao"; // Database name 
$tbl_name="forum_question"; // Table name 

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM $tbl_name ORDER BY id DESC";
// OREDER BY id DESC is order result by descending

$result=mysql_query($sql);
?>

<!-- Início do Javascript -->
<script type="text/javascript">
function limitaTextarea(valor) {
    quant = 250; /* Total de caracteres */
    total = valor.length;

    if(total <= quant) {
        resto = quant - total;
        document.getElementById('cont').innerHTML = resto;
    } else {
        document.getElementById('texto').value = valor.substr(0,quant);
    }
}
</script>
<div id="latest-projects">
        <h2 class="bubble">
                    <span>CRIAR POSTAGEM</span>
                    <a class="see-all"></a>
                    
        </h2>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#e7e7e7">
<tr>
<form id="form1" name="form1" method="post" action="add_topic.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#e7e7e7">
<td><p>&nbsp;</p>
  <p>&nbsp;</p>
<tr>
<td width="19%"><strong>
<h3>Título da Postagem</h3></strong></td>
<td width="1%">:</td>
<td width="80%"><input name="topic" type="text" id="topic" size="53" maxlength="20" /></td>
</tr>
<tr>
<td valign="top"><strong>
<h3>Resumo</h3>
<p>(Cole o inicio do texto</p>
<p>Será acrecentado ler mais</p>
<p>no fInal)</p>
</strong></td>
<td valign="top">:</td>
<td><p>
  <textarea name="detail" cols="55" rows="5" id="detail" onkeyup="mostrarResultado(this.value,255,'spcontando');contarCaracteres(this.value,255,'sprestante')"></textarea>
</p>
  <!-- Total de caracteres -->
  <span id="spcontando" style="font-family:Georgia;">Ainda não temos nada digitado..</span><br />
<span id="sprestante" style="font-family:Georgia;"></span></p>
</td>
</tr>
<tr>
<td valign="top"><strong>
<h3>Digite o conteudo </h3>
</strong></td>
<td valign="top">:</td>
<td><textarea name="complete" cols="55" rows="5" id="complete"></textarea></td>
</tr>
<tr>
  <td>
  <strong><h3>Imagem</h3></strong></td>
  <td>:</td>
  <td><input type="file" name="foto" /></td>
</tr>
<tr>

<td><strong>
<h3>Autor</h3></strong></td>
<td>:</td>
<td><input name="name" type="text" id="name" size="53" /> 
  <span class="obs"> (Digite Anônimo se preferir)</span></span></span></span></td>
</tr>
<tr>
<td><strong>
<h3>Email</h3></strong></td>
<td>:</td>
<td><input name="email" type="text" id="email" size="53" /> 
  <span class="obs"> (Não Obrigatório)</span></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><p>
  <input type="submit" class="button rarr" name="Submit" value="Enviar Pedido" />
  </p>
  <p>&nbsp;</p>
  <p>&nbsp; </p></td>
</tr>
</table>
</td>
</form>
</tr>
</table>
<tr>
  <td bgcolor="#e7e7e7">&nbsp;</td>
<td bgcolor="#e7e7e7"><BR></td>
<td align="center" bgcolor="#e7e7e7">&nbsp;</td>
<td align="center" bgcolor="#e7e7e7">&nbsp;</td>
<td align="center" bgcolor="#e7e7e7">&nbsp;</td>
</tr>
<?php include ("../includes/eventos.html"); ?>
<?php include ("../includes/blog.html"); ?>
<?php include ("../includes/sidebar.html"); ?>
            <div class="cl">&nbsp;</div>
        </div>
    </div>
</div>
<!-- /Main -->
<?php include ("../includes/footer.html"); ?>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...