upload de arquivo pdf com php

PHP

Apache

HTML5

Banco de Dados

28/03/2023

boa madrugada! to tendo dificuldades com uns arquivos pdf, o caminho do arquivo ta ok, e ta sendo buscado no banco perfeitamente, só que ao clicar no link pra exibir o arquivo, aparece a mensagem "falha ao carregar arquivo PDF", se alguem puder me ajudar, eu agradeço, é a unica coisa que falta pra finalizar minha sprint, eu to utilizando o wamp e o workbenck, o código é esse abaixo:

<?php
   include_once('config.php');

    if(isset($_FILES['arquivo'])){
        $arquivo = $_FILES['arquivo'];
        if($arquivo['error']){
            die("Falha ao enviar arquivo");
        }
            
        if($arquivo['size'] > 2097152){
            die("Arquivo muito grande! Max:2MB");
        }
            

        $pasta = "arquivos/";
        $nomeDoArquivo = $arquivo['name'];
        $novoNomedoArquivo = uniqid();
        $extensao= strtolower(pathinfo($nomeDoArquivo, PATHINFO_EXTENSION));

        if($extensao != "docx" && $extensao != "pdf"){
            die("Tipo de arquivo não aceito!");
        }
        $path = $pasta . $novoNomedoArquivo . "." . "$extensao";

        $deu_certo = move_uploaded_file($arquivo["tmp_name"], $path);
        if($deu_certo){
            $conexao ->query ("INSERT INTO formulario.contrato_cliente (nome, data_upload, path) VALUES('$nomeDoArquivo', NOW(),'$path' )") or die ($conexao->error);

            echo "<p>Arquivo enviado com sucesso!</p>";
       
        }
        else{
            echo "<p> Falha ao enviar arquivo</p>";
        }
    }
    $sql_querry = $conexao->query("SELECT * FROM formulario.contrato_cliente") or die($conexao->error);
?>


<!DOCTYPE html>
<html lang="pt-br">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>SG Manager</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

</head>
<style>
    *{
        margin: 0;
        padding: 0;

    }
    body{
        font-family: Arial, Helvetica, sans-serif;
        align-items: center;
        text-align: center;
    }
    .btn-primary{
        margin-left: 23%;
    }
    .bt:hover{
        color: blueviolet;
    }


</style>
<body>
        <form enctype="multipart/form-data" action="" method="POST">

            <p><label for="" >selecione um arquivo</label>
                <input class="btn btn-outline-secondary" name="arquivo" type="file"></p>
                <button class="btn btn-primary" name="upload" type="submit">enviar arquivo</button>
        </form>
        
        <table class="table table-bordered table-hover">
            <thead>
            <tr>
                <th scope="col">ID</th>
                <th scope="col">Arquivo</th>
                <th scope="col">Data de envio</th>
                <th scope="col">Ver Documento</th>

            </tr>
            </thead>
            <tbody>
                <?php
                while($arquivo = $sql_querry->fetch_assoc()){
                ?> 
                <tr>
                <td><?php echo $arquivo['id'];?></td>
                    <td><?php echo $arquivo['nome'];?></td>
                    <td><?php echo date("d/m/Y", strtotime($arquivo['data_upload']));?></td>
                    <td><a class="bt" target="_top" href="<?php echo $arquivo['path'];?>"><?php echo $arquivo['nome'];?></a></td>
                </tr>
                <?php
                }
                ?>
                
            </tbody>
        </table>         
          

        
</body>
</html>
Iris

Iris

Curtidas 0

Melhor post

Fernando C

Fernando C

28/03/2023

Oi, Iris, aqui seu código tá perfeito, verifique só se vc tem o Adobe Reader instalado no seu pc p/ abrir os arquivos PDF, ok? qqer coisa, retorne. sucesso e boa sorte
GOSTEI 1

Mais Respostas

Iris

Iris

28/03/2023

pode ser isso mesmo, vou verificar, obrigado pela dica
GOSTEI 0
POSTAR