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

Copiar Arquivo


siabreu

Pergunta

13 respostass a esta questão

Posts Recomendados

  • 0

amigo,

experiencia propria:

sai fora desta de armazenar arquivos dentro do bd.

fiz um back e quando fui restaura-los parte dos arquivos não foram gravadas.

Resultado: perdi os arquivos de fotos...

Agora: porque houve isso?

Boa pergunta.....

A melhor coisa é copiar as imagens mesmo e armazenar somente os paths. wink.gif

abrs,

Felipee.

Link para o comentário
Compartilhar em outros sites

  • 0

me explicaram mais ou menos esse negócio de colocar imagens no db...era algo como você dar um fopen() nele, depois ler ele com fread() e mandar o que foi lido pro db...mas é como disseram aí em cima, o melhor é guardar os paths mesmo :}

Link para o comentário
Compartilhar em outros sites

  • 0

Cara...

tenho um sistema de fotos, HJ tenho 34000 fotos cadastradas, antes usa o banco pra guardar ela, mas xegou uma certa hora (7000) fotos o BANCO travou, perdi metade das fotos...

então, é mais SEGURO você copiar para o banco o CAMINHO da foto, faz algumas colunas "pasta" - "extencao" - "prefixo"... algo do tipo....

Depois só faz uma busca no BANCO e cola as variaveis na tela, que as fotos estarao na sua tela....

é mais seguro, e seu banco não ficará PESADO, sem risco de perda de dados! huh.gif

[]`s

Eduardo Amorim

Link para o comentário
Compartilhar em outros sites

  • 0

Gladisson

Eu li o script e entendi o que faz, mas ao testar dá o seguinte erro:

Warning: filesize(): Stat failed for C:\WINDOWS\TEMP\php34.tmp (errno=2 - No such file or directory) in C:\Documents and Settings\Atlan\Desktop\testephp\bd\teste\dados.php on line 3
Warning: fread(): Length parameter must be greater than 0. in C:\Documents and Settings\Atlan\Desktop\testephp\bd\teste\dados.php on line 3
Warning: Cannot modify header information - headers already sent by (output started at C:\Documents and Settings\Atlan\Desktop\testephp\bd\teste\dados.php:3) in C:\Documents and Settings\Atlan\Desktop\testephp\bd\teste\dados.php on line 14

o que acontece? o arquivo não está sendo gravado no temp?

Link para o comentário
Compartilhar em outros sites

  • 0

Consegui fazer funcionar!!!!

O problema era que no php.ini tem uma configuração de diretório temp e o diretório que estava configurado lá não existia em minha máquina.

valeu pelas dicas.....

segue o código para quem quiser:

<?php

conectar();

$arq_type = $_FILES['arq']['type'];
$arq_name = $_FILES['arq']['name'];
$arq_size = $_FILES['arq']['size'];
echo "tipo arquivo";
echo "  " . $arq_type;

if($arq_type == "application/pdf")
{
 $conteudo=fread(fopen($arq, "rb"), filesize($arq));

 $cont=addslashes($conteudo);
 mysql_query("INSERT INTO tb_teste(artigo,nome,tamanho) VALUES ('$cont','$arq_name','$arq_size')") or die ("<BR><BR>erro de sql: ".mysql_error());
 echo "guardou!!!";

}else    {
 echo "Tipo de arquivo deve ser pdf...Erro...";
}

?>

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
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...