showimage.php<?php  
include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/utilityfunction/SqlHelp.class.php';
include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/Comm.class.php';$SqlHelper = new SqlHelp ( 'read', 'qztoa' );
$sql = "select * from qzt_image";
$query = $SqlHelper->query($sql );
$query_num = $SqlHelper->num_rows ($query );$rows = array ();  
$retarr = array (); 
$query =$SqlHelper->query ( $sql );
if($query)
{
$arr_teainfo2 = array ();
while ( $arr_teainfo = $SqlHelper->fetch_assoc($query) ) {
$arr_teainfo2 [] = $arr_teainfo;
$Id=$arr_teainfo["Id"];
echo $arr_teainfo["Id"];
echo "<IMG SRC=\"Second.php3?Id=$Id\">"; }
}?>  
Second.php3
<?php  
include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/utilityfunction/SqlHelp.class.php';
include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/Comm.class.php';$SqlHelper = new SqlHelp ( 'read', 'qztoa' );
$sql = "select * from qzt_image where Id=10";
$query = $SqlHelper->query($sql );
$query_num = $SqlHelper->num_rows ($query );$rows = array ();  
$retarr = array (); 
$query =$SqlHelper->query ( $sql );
if($query)
{
$arr_teainfo2 = array ();
while ( $arr_teainfo = $SqlHelper->fetch_assoc($query) ) {
$arr_teainfo2 [] = $arr_teainfo;
$Id=$arr_teainfo["Id"];
$imagetype=$arr_teainfo["imagetype"];
//echo $arr_teainfo["images"];
//Header( "Content-type: $imagetype"); 
header('Content-type: $imagetype');
echo $arr_teainfo["images"];}
}?>   
请问我哪里有问题?PHP新人,不知道哪里错了PHP

解决方案 »

  1.   

    1、你的 php3 类型文件能被正确解析吗?检查一下配置文件
    2、如果程序文件时 utf-8 编码的,请确认都没有 BOM 头
    3、Second.php3 输出图片不要用循环
      

  2.   

    我在httpd.conf文件里面加了AddType application/x-httpd-php .php .html .htm .php3
    这样是不是就能正常解析php3 类型文件了?
      

  3.   

    我测试了,.php3可以正常解析的,但是还是不行啊谁帮下啊
      

  4.   

    先运行php3把image打印出来了,正常的,没有报错<?php  
    include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/utilityfunction/SqlHelp.class.php';
    include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/Comm.class.php';$SqlHelper = new SqlHelp ( 'read', 'qztoa' );
    $sql = "select * from qzt_image where Id=10";
    $query = $SqlHelper->query($sql );
    $query_num = $SqlHelper->num_rows ($query );$rows = array ();  
    $retarr = array (); 
    $query =$SqlHelper->query ( $sql );
    if($query)
    {
    $arr_teainfo2 = array ();
    while ( $arr_teainfo = $SqlHelper->fetch_assoc($query) ) {
    $arr_teainfo2 [] = $arr_teainfo;
    $Id=$arr_teainfo["Id"];
    $imagetype=$arr_teainfo["imagetype"];
    $image= $arr_teainfo["images"];
    }
    //header('Content-type: image/jpeg ');
    echo $image; 
    }
      

  5.   

    上面代码贴出来多了<BR><BR> ,我程序里没有的
      

  6.   

    先运行php3把image打印出来了,正常的,没有报错<?php  
    include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/utilityfunction/SqlHelp.class.php';
    include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/Comm.class.php';$SqlHelper = new SqlHelp ( 'read', 'qztoa' );
    $sql = "select * from qzt_image where Id=10";
    $query = $SqlHelper->query($sql );
    $query_num = $SqlHelper->num_rows ($query );$rows = array ();  
    $retarr = array (); 
    $query =$SqlHelper->query ( $sql );
    if($query)
    {
    $arr_teainfo2 = array ();
    while ( $arr_teainfo = $SqlHelper->fetch_assoc($query) ) {
    $arr_teainfo2 [] = $arr_teainfo;
    $Id=$arr_teainfo["Id"];
    $imagetype=$arr_teainfo["imagetype"];
    $image= $arr_teainfo["images"];
    }
    //header('Content-type: image/jpeg ');
    echo $image; 
    }

    程序没报错,把输出的数据复制到地址栏,有图片显示没??
      

  7.   

    先运行php3把image打印出来了,正常的,没有报错<?php  
    include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/utilityfunction/SqlHelp.class.php';
    include_once dirname(dirname (dirname ( __FILE__ ))). '/yeqztsys1.0/Comm.class.php';$SqlHelper = new SqlHelp ( 'read', 'qztoa' );
    $sql = "select * from qzt_image where Id=10";
    $query = $SqlHelper->query($sql );
    $query_num = $SqlHelper->num_rows ($query );$rows = array ();  
    $retarr = array (); 
    $query =$SqlHelper->query ( $sql );
    if($query)
    {
    $arr_teainfo2 = array ();
    while ( $arr_teainfo = $SqlHelper->fetch_assoc($query) ) {
    $arr_teainfo2 [] = $arr_teainfo;
    $Id=$arr_teainfo["Id"];
    $imagetype=$arr_teainfo["imagetype"];
    $image= $arr_teainfo["images"];
    }
    //header('Content-type: image/jpeg ');
    echo $image; 
    }

    程序没报错,把输出的数据复制到地址栏,有图片显示没??
    这个存的不是图片的地址,而是blob数据类型的
      

  8.   

    浏览器地址栏 http://localhost/Second.php3?Id=10
    能开到什么?
      

  9.   

    如果有header('Content-type: image/jpeg ');的话,是一个显示叉叉的图片,就是显示不出来,如果注释掉,就是执行echo $image; ,显示的是好多看不懂的符号乱码,因为是blob类型,肯定不能正常输出的
      

  10.   

    我测试的id为10的图片是jpg的,所以我先写出固定的header('Content-type: image/jpeg ');
      

  11.   

    你的图片格式有问题!这样吧,你把 $image 写到文件里,比如 file_put_contents('test.jpg', $image);
    然后把他发上来
      

  12.   

    <?php
    $query = "select * from qzt_image where id=10";
    $result = mysql_query($query);
    $row = @mysql_fetch_array($result);
    Header( "Content-type: image/pjpeg");
    echo "$row[uploadfile]";
    ?>
    我的原始版代码。
    是pjpeg哦。
      

  13.   

    可以正常写入的原来 test.jpg是另一张图,写入后就是这张图了
      

  14.   

    我用pjpeg还是显示不出来,我用的gbk的格式,请问你用的什么格式?