<? $conn=@mysql_connect("localhost","root","root");
@mysql_select_db("law",$conn);
@mysql_query("set names 'utf8'");
$sql="select * from lawer";
$qry=@mysql_query($sql,$conn);
$row=@mysql_fetch_array($qry);
Header("Content-type:image/jpg");
echo $row['photo'];
?>
最开始的时候,我就这么写的,不弹出文件下载对话框,但显示不了图片,报warnning:cannot modification head.....,上网查了一下资料,说是把output_buffer=On, 或者加上ob_start() ob_end_flash(),通通不管用。几经折腾之后,不但没法正常显示图片,直接弹出个文件下载对话框来。
气死我了。
安装的是appach2+php5+mysql
不含ob_start() ob_end_flash() flash()之类的函数的php文件,能正常解析浏览。加了这些之类的函数后就直接弹出文件下载对话框。
只有Header()函数也是弹出文件下载对话框。很奇怪的现象是,我反复折腾,比如先将php文件保存为ANSI用记事本,然后用editplus保存为utf-8,有时候能好,正常显示一个图片。但有时候加了一点东西就怎么都不行了。我只是想从数据库中读出照片并显示,通过循环:
while($row=mysql_fetch_array($qry))
{
     Header("Content-type:image/jpg");
     echo $row['photo'];
}最好能帮我把代码写出来.目录就是从mysql数据库中读取图片并显示出来,谢谢。
现在遇到两个问题:
1。直接弹出文件下载对话框。 
2。不弹出文件下载对话框,但无法正常显示图片,报Warning: Cannot modify header information - headers already sent by如能解决,非常感谢。以上代码是我用来试验的,真正的代码如下:
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href=css.css />
</head>
<body>
<div id="box"><? include ("head.php");?></div>
<div id="box">
<div class="lefts">
<ul>
<li class="langmu"><font size="10px" color="#ff0000">律师介绍</font></li>
<?
include ("conn.php");
$lawsql="select * from lawer";
$lawquery=mysql_query($lawsql);
while($lawrow=mysql_fetch_array($lawquery))
{
$photo_file=$lawrow['name'].'.jpg';
?><li class="langmu"><a href=<? echo $_SERVER[PHP_SELF] ?>?lawer_id=<? echo $lawrow['id'] ?>><? Header("Content-type:image/jpg"); echo $lawrow['photo'];?></a></li>
<li><? echo $lawrow['name']; ?></li><?
}
?>
</ul>
</div>
<div class="rights">
<div style="width:400px;height:200px;">
<?
//introduction
if($_GET['lawer_id'])
{
$lawer_id=$_GET['lawer_id'];
$lawerdessql="select * from lawerdes where id=".$lawer_id;
$desqry=mysql_query($lawerdessql);
$desrow=mysql_fetch_array($desqry);
echo "     ".$desrow['description'];
}
else
{
echo "     请选择律师";
}
?>
</div>
<br><br><br>
<div style="width:400;height:200px;">
<?
//contact methods
echo "contact methods";
?>
</div>
</div>
</div>
<div id="box"><? include ("foot.php");?></div>
</body>
</html>

解决方案 »

  1.   

    不能这么操作图片这么引用
    <img src="file.php">然后在file.php文件里,搜索数据库,echo 字段内容
      

  2.   

    没办法,临时用本地文件显示了:
    <img src=<? echo "images/".$photo_file; ?> />如果用引用 <img src="file.php">,file.php该怎么写,把代码写出来好吗,谢谢
      

  3.   

    好像不灵,help me:test.php
    <html>
    <head><title></title></head>
    <body>
    <? $conn=@mysql_connect("localhost","root","root");
    @mysql_select_db("law",$conn);
    @mysql_query("set names 'utf8'");
    $sql="select * from lawer";
    $qry=@mysql_query($sql,$conn);
    $row=@mysql_fetch_array($qry);
    echo '<img src="getphoto.php?lawer_id='.$row['id'].'" />';
    ?>
    </body>
    </html>getphoto.php
    <?
    $sql="select * from photo where id=$lawer_id";
    $result=mysql_query($sql);
    $photo=mysql_fetch_array($result);
    Header("Content-type:image/jpg"); echo $row['data'];
    ?>加上连接数据库代码也不行。help me
      

  4.   

    多谢,已经解决了。原来是我的一个数组名写错了。
    getphoto.php文件中应该是 echo $photo['data'];
    sorry.