作者shadowjohn (这事要用身体解释)
看板PHP
标题Re: [请益] 文字与图片显示
时间Wed Jun 3 11:06:56 2015
※ 引述《dodo12500 (小莫)》之铭言:
: 大家好,小弟刚学php,在图片显示上遇到一些问题
: 我在members资料表中存NUM(int)和img(blob)这两项资讯
: 然後在showMembers.php上显示编号和图片
: 我的问题是不晓该怎麽样同时显示文字讯息和图片
: 若在showMembers.php增加header("Content-type: image/jpeg"); 则会没办法显示编号
: 於是我想说将显示图片用showPic.php来显示,但不太晓得该怎麽将img的资料传过去
: 或者有甚麽样的作法比较恰当呢?
: 麻烦板上大大们帮助了 谢谢!
: showMembers.php
: ----------------------------------------------
: <?php
: include("DB_connect.php");
: $sql = "SELECT * FROM members";
: $result = $conn->query($sql);
: if ($result->num_rows > 0) {
: // output data of each row
: while($row = $result->fetch_assoc()) {
: echo "NUM:".$row["NUM"]."<br>";
: echo "<IMG height='100' SRC=\"showPic.php?img=".$row[img]."\">";
: }
: } else {
: echo "0 results";
: }
: $conn->close();
: ?>
: ----------------------------------------------
: showPic.php
: ----------------------------------------------
: <?php
: header("Content-type: image/jpeg");
: echo $_GET[img];
: ?>
: ----------------------------------------------
方法有二种:
第一种:
在列表时,请不要直接把 blob 那个栏位也查出来,
把图片的流水号带给 showPic.php 就好。
如:showPic.php?id=3
在你的 showPic.php 里
<?php
//建立连线
...
查找 SQL where ID = $_GET['id']
// header
...
// 输出图内容
echo blob 内容
第二种:
要记得 session_start() 呦
既然你已经把 blob 在列表中查出来了,把他写入 session 吧 XD
$_SESSION['img'] = blob..
在 showPic.php 里,直接
<?php
//header
...
// 输出图内容
echo $_SESSION['img'];
建议不要在资料库直接存 blob 内容,到最後会很慢~
也不好备份或分散
以上二个方法,第一种较好
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.134.48.249
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/PHP/M.1433300819.A.027.html
※ 编辑: shadowjohn (140.134.48.249), 06/03/2015 11:07:44
※ 编辑: shadowjohn (140.134.48.249), 06/03/2015 11:09:30
1F:推 dodo12500: 当初想说查一次把要的都资料读出来 我会在改的 谢谢!! 06/03 11:23
2F:→ MOONRAKER: 这麽执着「查一次」就把图片写入到暂存目录 定好档名 06/03 11:40
3F:→ MOONRAKER: 输出HTML内去抓那个图片 06/03 11:40
4F:→ MOONRAKER: 但是在多线并发的协定下执着一次 只能说是洁癖 06/03 11:42
5F:→ MOONRAKER: 过度的洁癖是不卫生的 06/03 11:43
6F:→ dodo12500: 好的 谢谢指教 06/03 11:57