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

UPLOAD DE ARQUIVOS


Guest --Black_33 --

Pergunta

Guest --Black_33 --

Olá pessoal , bom dia a todos,

Gostaria muito da ajuda de vocês para me ajudarem a modificar uma script que já tenho onde anexo imagem e gravo em banco de dado com a ajuda do Amigo Carlos Eduardo Gomes Monteiro consegui anexar e baixar estas imagens.

Agora meu Superior quer que eu faça um script que anexe apostilas no formato .pdf e .doc para uma base de conheciemnto e salve no Mysql e quando surgir a dúvida ele faça uma busca e baixe esta apostila.

O script que o Carlos Eduardo me ajudou a atender e a compreender foi este:

INSERIR A IMAGEM NO BD

<?php
$date = date("d/m/y");
$hora = date("H:i");
include "config.php";
include "valida_user.inc";
include "layout.php";
mysql_connect($Host, $Usuario, $Senha);
mysql_select_db($Base);

//VERIFICA SE O FORM FOI ENVIADO
if($_POST) { 

//CONECTA AO MYSQL 
$conn = mysql_connect($Host, $Usuario, $Senha);
mysql_select_db($Base);


//RECEBE DADOS DO FORMULÁRIO 
$pFoto = $_FILES["arquivo"]["tmp_name"]; 
$pTipo = $_FILES["arquivo"]["type"]; 

//echo $pFoto;
//die;

//ABRE ARQUIVO 
$pont = fopen($pFoto, "r"); 

//PERCORRE O ARQUIVO 
$dados = addslashes(fread($pont, filesize($pFoto))); 

//INSERE NA BASE DE DADOS

$sQuery = "insert into chamados (data_abertura, hora_abertura, setor, ip, descricao, solucao, tipo, nome, email, status, obs, arquivo, tecnico)
values ('" . $date . "',
'" . $hora . "',
'" . $HTTP_POST_VARS["setor"] . "',
'" . $HTTP_POST_VARS["ip"] . "',
'" . $HTTP_POST_VARS["descricao"] . "',
'" . $HTTP_POST_VARS["solucao"] . "',
'" . $HTTP_POST_VARS["tipo"] . "',
'" . $HTTP_POST_VARS["nome"] . "',
'" . $HTTP_POST_VARS["email"] . "',
'" . $HTTP_POST_VARS["status"] . "',
'" . $HTTP_POST_VARS["obs"] . "',
'" . $dados . "',
'" . $nome_usuario . "')";

}if (mysql_query($sQuery)) {
echo "&lt;script>window.location='lista_chamados.php'</script>";
} else {
echo "Problemas gravando chamado\n";
}

exit;
?>
E O OUTRO SCRIPT QUE SEGUE É ONDE EU BAIXO O ARQUIVO QUE FOI SALVO COM O SCRIPT ACIMA...
<?php

include "config.php";
include "valida_user.inc";
$con= mysql_connect($Host, $Usuario, $Senha);
mysql_select_db($Base);
//Aí na página baixarAnexo.php você vai pegar o Id
$id = $_GET['codigo'];

//Você vai o select
$buscar = mysql_query("SELECT arquivo FROM chamados WHERE codigo = '$id'",$con);
$linha = mysql_fetch_array($buscar);

//Aí a partir daqui vem aquele código que eu já te passei...
$nomeArquivo = "temp/" . md5(mt_rand(100,10000)) . ".jpg";
$file = fopen($nomeArquivo,"a+");
fwrite($file,$linha['arquivo']);
fclose($file);

//Forçando o download...
header("Content-type: application/save");
header("Content-Disposition: attachment; filename=" . $nomeArquivo);
header("Content-Length: " . filesize($nomeArquivo));
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Pragma: no-cache");
header("Content-Transfer-Encoding: binary\n");
readfile($nomeArquivo);

//Apagando o arquivo
unlink($nomeArquivo);

//Redirecionando a página anterior
header("Location: listar_chamado.php");
?>

E O SCRIPT ACIMA PRECISO ALÉM DO SALVAR A IMAGEM COMO JÁ ESTA FAZENDO PRECISO SALVAR TAMBÉM AS EXTENSÕES PDF E DOC, POIS QUANDO O SISTEMA ERP UTILIZADO PELA EMPRESA GERAR MAIS DE DOIS ERROS O USUARIO GERA OS PRINTS COLA NUM DOC OU PDF E ANEXA NO SISTEMA DE HELPDESK.

AGORA UMA OUTRA COISA FIZ UM CÓDIGO HTML ONDE GRAVO APOSTILAS NAS EXTENSÕES PDF E DOC TENHO UM HTML ONDE INSIRO AS APOSTILAS, QUE É MUITO PARECIDA COM O QUE INSERE NO BD (1° SCRIPT ACIMA) MAS NÃO SEI COMO FAZER PARA BAIXAR ESTAS APOSTILAS , JÁ FIZ ALGUMAS ALRTERAÇÕES NO 2° SCRIPT , MAS NÃO CONSIGO BAIXA , MAS NÃO BAIXA O CONTEUDO E SIM O CAMINHO TIPO : "IMAGEM/CURRCILO.DOC".

ESPERO QUE vocês TENHAM COMPREENDIDO O QUE QUIZ DIZER....

DESDE já AGRADEÇO E CONTO COM AJUDA DE TODOS.....

OBRIGADO

BLACK_33

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Guest --Black_33 --

Pessoal gostaria de agredecer a atenção , mas por favor sera que alguém poderia me dar uma luz de como posso resolver esse probleminha!

desde já agradeço

Black_33

Link para o comentário
Compartilhar em outros sites

  • 0

Leia as regras do fórum... não é permitido dar UP...

Para descobrir a extensão do arquivo basta saber o mime-type (que já está na variável $pTipo)...

application/pdf -> pdf

application/msword -> doc

image/jpeg (ou image/pjpeg se vir do IE) -> jpg/jpeg/jpe

Ou seja, com if/else ou switch você já pode saber a extensão...

No segundo arquivo você vai ter que mudar a query... além do arquivo vai ter que pegar a extensão também...

Essa linha:

$nomeArquivo = "temp/" . md5(mt_rand(100,10000)) . ".jpg";

Também terá que ser mudada, pois jpg não será mais fixo, isso vai ter que ver do BD...

A parte de forçar o download já está genérica, deve funcionar para todos os tipos de arquivos...

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Augusto César

sistema

completo de Ordem de Serviço,

Peço apenas que me deixe os creditos na pagina do menu, e use avontade.

Instalação

execute o data.sql que esta destro do diretorio sql

depois altere a conexão data.php que esta dentro do diretorio connections

depois é só usar o sistema a vontade, só peço que deixem os creditos

na pagina menu.php,

já que estou disponibilizando este sistema de graça e gostaria de ser

lembrado por isso,

qualquer alteração que de melhorias ao sistema, postem novamente aqui

no site e coloquem,

no campo versão do menu.php, a devida numeração e acrescente junto ao

meu nome o credito referente a pessoa que adcionou,

se quem usar o sistema for honesto nestes quesitos, eu prometo colocar

o sistema de estoque todo em ajax que estou desenvlvendo.

mande a solicitação ao costamarques@gmail.com que eu mando o sistema, se quiser pode pegar em plugmasters.com.br,codigolivre.com.br

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,2k
    • Posts
      652,1k
×
×
  • Criar Novo...