如何在PHP和HTML中同时显示图像和/或文件?[已关闭]

zlhcx6iw  于 2023-08-01  发布在  PHP
关注(0)|答案(1)|浏览(81)

**已关闭。**此问题为not reproducible or was caused by typos。它目前不接受回答。

此问题是由打印错误或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这一个是解决的方式不太可能帮助未来的读者。
6天前关闭
Improve this question
所以我试图上传和显示图像和文件与PHP和HTML(这是内部的MySQL数据库(blob)),然而,当我尝试:

<td>
<?php echo $cintia['id']; ?>
</td>
<td>
<?php echo $cintia['nombre']; ?>
</td>
<td>
if(strpos($archivo, 'image') !== false) {
<image src="data:image/jpg;base64,<?php echo base64_encode($cintia['archivo']); ?>"/>
else {
<embed src="data:application/pdf;base64,<?php echo base64_encode($cintia['archivo']); ?>"/>
}
</td>

字符串
它显示了这两者,即使指令;所以我认为它是关于echo的当我插入一个图像或文件时它看起来是什么样子的
x1c 0d1x的数据
我试图改变与回声有关的事情,如果指令,但他们似乎不工作。我还想知道是否有一种方法来显示图像和文件,而不需要专门用<img src="data:image/jpg...><embed src="data:application/pdf...>编写,因为这更像是一种绝望的方法,而不是一个真实的的解决方案。
我正在使用mysql和longblob来处理文件(但是我真的认为这是关于echo的一些我不理解的东西)

daolsyd0

daolsyd01#

为什么要在数据库中以base64格式存储图像?
做你想做的事的最好办法是:
1.上传文件时:
1.将文件存储在文件系统中
1.获取存储文件的路径
1.将此PATH存储在数据库中
1.当您要显示图像时
1.查询数据库并获取PATH
1.然后使用自然IMGsrc标记对其进行回显,而不进行任何解码。这样就可以毫无问题地显示文件。
如果您仍然需要/希望在您的基本代码中使用base64,您忘记将PHP if语句 Package 到Tag中。我会说:

<td>
    <?php echo $cintia['id']; ?>
</td>
<td>
    <?php echo $cintia['nombre']; ?>
</td>
<td>
<?php
    if(strpos($archivo, 'image') !== false) { ?>
        <image src="data:image/jpg;base64,<?php echo base64_encode($cintia['archivo']); ?>"/><?php
    } else { ?>
        <embed src="data:application/pdf;base64,<?php echo base64_encode($cintia['archivo']); ?>"/><?php
    } ?>
</td>

字符串

相关问题