Edilson_w 4 Denunciar post Postado Maio 1, 2010 Olá Amigos Estou necessitado de um script em PHP para que faça o seguinte processo: O usuário a através de um formulário onde ele coloca o nome do arquivo para download sem ter necessidade de colocar a extensão desta arquivo. (Nesta caso vai ter uma pasta onde terão vários arquivos para download) Ao envia o scrpit php vai procurar o arquivo na pasta com a extensão definida se houver este arquivo ele disponibiliza para download, caso não tenha este arquivo informa que o arquivo não existe Alguém poderia dar uma dica de como fazer Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 1, 2010 use glob() http://www.php.net/glob Compartilhar este post Link para o post Compartilhar em outros sites
Edilson_w 4 Denunciar post Postado Maio 1, 2010 use glob() http://www.php.net/glob O que eu quero é o seguinte Quando o usuario colocar o nome do arquivo que ele quer fazer download, se existir este arquivo ao clicar buscar o aquivo ja abre para download Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 1, 2010 viu o link que postei? não lhe serviu? por quê? Compartilhar este post Link para o post Compartilhar em outros sites
Edilson_w 4 Denunciar post Postado Maio 1, 2010 viu o link que postei? não lhe serviu? por quê? Sim eu vi o link que você postouMas não consegui entender não intendo muito php Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 1, 2010 // campo de texto do formulário $nome = "arquivo"; $files = glob( $nome . ".*" ); print_r( $files ); Compartilhar este post Link para o post Compartilhar em outros sites
Edilson_w 4 Denunciar post Postado Maio 2, 2010 // campo de texto do formulário $nome = "arquivo"; $files = glob( $nome . ".*" ); print_r( $files ); Eu fiz da seguinte forma: Formulário em html forme.html <html> <body> <form method="post" action="buscar.php" enctype="multipart/form-data"> <table><tr><td> <input type="text" name="nome"> </td></tr> <tr><td align="center"> <input type="submit" value="OK"> - <input type="reset" value="Limpar"> </td></tr> </table> </form> </body> </html> buscar.php <?php // campo de texto do formulário $nome = "nome"; $files = glob( $nome . "../downloads./*.pdf" ); print_r( $files ); ?> Quando clica em enviar no formulário html, na pagina buscar.php e exibido o seguinte Array ( ) Compartilhar este post Link para o post Compartilhar em outros sites
Renato Neto 0 Denunciar post Postado Maio 2, 2010 Altere seu buscar.php para: $nome = $_POST["nome"]; $pasta = "../downloads/"; // Pasta dos arquivos if(!empty($nome)) { $name = $pasta . $nome . ".pdf"; $file = file_exists($name); if($file) { header("Content-type: application/pdf"); header("Content-Disposition: attachment; filename=" . $nome . ".pdf"); readfile($name); } else { echo "O arquivo {$nome}.pdf não existe."; } } Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 2, 2010 Quando clica em enviar no formulário html, na pagina buscar.php e exibido o seguinte Array ( ) Return Values Returns an array containing the matched files/directories, an empty array if no file matched or FALSE on error. fonte: http://www.php.net/glob array vazio == nenhum arquivo coincide com o padrão Compartilhar este post Link para o post Compartilhar em outros sites
Edilson_w 4 Denunciar post Postado Maio 2, 2010 Altere seu buscar.php para: $nome = $_POST["nome"]; $pasta = "../downloads/"; // Pasta dos arquivos if(!empty($nome)) { $name = $pasta . $nome . ".pdf"; $file = file_exists($name); if($file) { header("Content-type: application/pdf"); header("Content-Disposition: attachment; filename=" . $nome . ".pdf"); readfile($name); } else { echo "O arquivo {$nome}.pdf não existe."; } } Olá Renato Funcionou como eu esperava parabéns e muito obrigado Teria como acrescentar um aviso caso o usuário envia-se sem preencher o formulário Agradeço Edilson Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Maio 2, 2010 já não entendi mais nada você não queria buscar por qualquer extensão? é ai que glob() entra e faz exatamente isso. agora só está pesquisando por .pdf. :blink: Compartilhar este post Link para o post Compartilhar em outros sites
Edilson_w 4 Denunciar post Postado Maio 2, 2010 já não entendi mais nada você não queria buscar por qualquer extensão? é ai que glob() entra e faz exatamente isso. agora só está pesquisando por .pdf. :blink: Desculpe Beraldo E que na fui claro e objetivo na pergunta que você respondeu. Mas sua resposta ajudou em muito achegar no que eu estava precisando Muito obrigado Compartilhar este post Link para o post Compartilhar em outros sites
Renato Neto 0 Denunciar post Postado Maio 2, 2010 Olá Renato Funcionou como eu esperava parabéns e muito obrigado Teria como acrescentar um aviso caso o usuário envia-se sem preencher o formulário Agradeço Edilson Você tem que dar uma estudada em PHP, isso é uma coisa mais simples ainda de se fazer :) $nome = $_POST["nome"]; $pasta = "../downloads/"; // Pasta dos arquivos if(!empty($nome)) { $name = $pasta . $nome . ".pdf"; $file = file_exists($name); if($file) { header("Content-type: application/pdf"); header("Content-Disposition: attachment; filename=" . $nome . ".pdf"); readfile($name); } else { echo "O arquivo {$nome}.pdf não existe."; } } else { echo "Você não digitou um nome de arquivo."; } Compartilhar este post Link para o post Compartilhar em outros sites
Edilson_w 4 Denunciar post Postado Maio 2, 2010 Olá Renato Funcionou como eu esperava parabéns e muito obrigado Teria como acrescentar um aviso caso o usuário envia-se sem preencher o formulário Agradeço Edilson Você tem que dar uma estudada em PHP, isso é uma coisa mais simples ainda de se fazer :) $nome = $_POST["nome"]; $pasta = "../downloads/"; // Pasta dos arquivos if(!empty($nome)) { $name = $pasta . $nome . ".pdf"; $file = file_exists($name); if($file) { header("Content-type: application/pdf"); header("Content-Disposition: attachment; filename=" . $nome . ".pdf"); readfile($name); } else { echo "O arquivo {$nome}.pdf não existe."; } } else { echo "Você não digitou um nome de arquivo."; } Olá Renato Muito obrigado mesmo pelo seu pronto atendimento Estou estudando sim, inclusive estou estudando o livro PHP e MySQL Desenvolvimento Web Não estou gostando muito Você recomenda um livro ou curso? Obrigado Compartilhar este post Link para o post Compartilhar em outros sites