如何使用PHP从html标签中的数据库中检索文件

时间:2017-09-20 09:34:19

标签: php html

嘿伙计们我想用html标签从数据库中检索文件,就像这样

<img src="image/<?php echo $fname?>" alt=" " height="75" width="75">

这是用于图像,但我想用于检索文件,如.doc,.ppt,.pdf,.txt

我这样做

 <a href="file/<?php echo $filename?>"></a>

获取这样的文件

$filename = $row['file'];

检索.ppt,.pdf,.txt?

的文件是更好的方法

2 个答案:

答案 0 :(得分:2)

假设,

  • 您没有使用任何框架
  • 您的视图文件(* .php)和文件目录在同一级别。
  • $ row ['file']包含带扩展名的文件名。例如:image1.jpg或
    doc1.xls
  • 您想要在视图文件中显示图像,但您想要 强制用户下载.doc,.ppt,.pdf(application / octet-stream MIME类型)

    您可以在同一级别创建另一个php文件以强制下载其他扩展程序。让我们将其命名为download.php

视图文件中的

def str_compare_by_diff_count(a, b, diff_count)
  (a.size == b.size) && a.chars.select.with_index { |v, i| v != b[i] }.count <= diff_count
end

str_compare_by_diff_count("wonder", "wander", 1)   #=> true
str_compare_by_diff_count("wonder", "wandor", 1)   #=> false
str_compare_by_diff_count("wonder", "wandor", 2)   #=> true
str_compare_by_diff_count("wonder", "wanbor", 2)   #=> false
str_compare_by_diff_count("wonder", "wanderr", 1)  #=> false

in download.php

<?php 
$path = '/file/';
$filePath = $path . $row['file'];
$downloadExtensions = ['doc', 'ppt', 'txt']; // you can add more extensions
?>

<?php if (file_exists($filePath)): ?>
    <?php $extension = pathinfo($filePath, PATHINFO_EXTENSION); ?>


    <?php if (in_array($extension, $downloadExtensions)): ?>
        <a href="download.php?file=<?php echo $row['file']; ?>"><?php echo $row['file']; ?></a>
    <?php else: ?>
        <a href="<?php echo $filePath; ?>"></a>
    <?php endif; ?>
<?php endif; ?>

答案 1 :(得分:0)

检查此link 。它会指导你正确