这是我创建的数据库名及表 image
use my;
  create table image(
    id varchar(20) not null,
    photo longlob,
    primary key (id)
    );下面是我仿照写的显示图片代码
liulan.php
<body>
<?php
//header("Content-type:image/jpeg");
$conn = @ mysql_connect("localhost","root","") or die("数据库链接错误");
mysql_select_db("my",$conn);
$result=mysql_query("select * from image")or die("can't perform query");while($row=mysql_fetch_object($result)){ ?><img src="<?php "secondtype.php"?>.jpg ">
<?php
}
?>
</body>secondtype.php
<body>
<?php
$result=mysql_query("select * from image")or die("can't perform query");
$row=mysql_fetch_object($result);
header("content-type: image/jpeg");
echo "$row[photo]";
?>
</body>
到底是什么问题,我刚学php 是个菜鸟,将图片以二进制存储到数据库费了不少劲,但是如果不显示在web页面也就没有意义了,望各位高手指教啊!先谢谢了!

解决方案 »

  1.   

    <img src="<?php "secondtype.php"?>.jpg ">
    改成:
    <img src="<?php echo "secondtype.php" ?>">
      

  2.   

    liulan.php
    <body>
    <?php
    //header("Content-type:image/jpeg");
    $conn = @ mysql_connect("localhost","root","") or die("数据库链接错误");
    mysql_select_db("my",$conn);
    $result=mysql_query("select * from image")or die("can't perform query");while($row=mysql_fetch_object($result)){ ?>
    <img src="secondtype.php">
    <?php
    }
    ?>
    </body>secondtype.php
    <body>
    <?php
    $result=mysql_query("select * from image")or die("can't perform query");
    $row=mysql_fetch_object($result);
    header("content-type: image/jpeg");
    echo "$row[photo]";
    ?>
    </body>
      

  3.   

    secondtype.php
    中不能有其他字符输出
      

  4.   

    直接输出数据,不需要'<img src="">'
      

  5.   

    一 :
    <img src="<?php "secondtype.php"?>.jpg ">
    改成:
    <img src="<?php echo "secondtype.php" ?>">
    二:
    secondtype.php中的 <body>和</body>要去掉
    三:
    echo "$row[photo]";
    改成
    echo "$row['photo']"; //加上引号
    ==========================================
    另外,你应该先直接运行secondtype.php,看看能不能显示图片,排除一下其他代码问题。
      

  6.   

    都试了 还是不管用  是不是我编辑器的问题啊  我是用dreamweaver编的
      

  7.   

    liulan.php
    <body>
    <?php
    //header("Content-type:image/jpeg");
    $conn = @ mysql_connect("localhost","root","") or die("数据库链接错误");
    mysql_select_db("my",$conn);
    $result=mysql_query("select * from image")or die("can't perform query");while($row=mysql_fetch_object($result)){ ?><img src="<?php include "secondtype.php"?>" />
    <?php
    }
    ?>
    </body>secondtype.php
    <body>
    <?php
    $result=mysql_query("select * from image")or die("can't perform query");
    $row=mysql_fetch_object($result);
    //header("content-type: image/jpeg");//如果数据直接读出来是bytes可以直接显示不用发送头,但是1个IMG标签只能存放1个图片 ,这里的循环不合理 
    echo "$row[photo]";
    ?>
    </body>
      

  8.   

    //header("content-type: image/jpeg");//如果数据直接读出来是bytes可以直接显示不用发送头,但是1个IMG标签只能存放1个图片 ,这里的循环不合理 可是我显示时没有问题啊  我上传了十个图片  显示时就显示出来十个红叉  只是图片读不出来!
      

  9.   

    用试了一遍 这次对了 非常感谢 但是打开liulan。php这个web页面时 虽然可以显示十个图片 但都是一样的  怎样才能显示出我上传的所有图片啊!
      

  10.   

    <img src="secondtype.php?<?php echo $row['id'];?>">
    secondtype.php根据id参数取对应的数据
      

  11.   

     
    试了 不行  最后我把id换成了tinyint类型 谢了!