日期:2014-05-17  浏览次数:20652 次

新人请教mysql+php 页面之间从数据库调出图片不能显示问题
mysql+php 页面之间显示图片问题,怎样才能让商品名和对应的图片正常显示呢。

1,index.php 
.......前面省略
<tr>
<img src="head_picture.php?recid=<{$myrow[data].tb_commodity_id}>" width="120" height="135" border="3" >
</tr>
      <tr>
        <td width="60" height="20" bgcolor="#FFFFFF">商品名:</td>
        <td width="125" bgcolor="#FFFFFF">
<p><{$myrow[data].tb_commodity_id}></p>
 <p><{$myrow[data].tb_commodity_name}></p>
          </td>
      </tr>
2,head_picture.php
<?php  include("conn.php");        
$query="select * from tb_commodity where tb_commodity_id=".$recid;
    $result=mysql_query($query);
    if(!$result) die("error: mysql query"); 
    $num=mysql_num_rows($result); 
    if($num<1) die("error: no this recorder");     
    $data = mysql_result($result,0,"tb_commodity_picture"); 
    mysql_close($conn); 
    echo $data;
?> 

3,数据库表中包含:tb_commodity_id,tb_commodity_name,tb_commodity_picture 字段。

在index页面,商品名能够正常显示数据库里面的5条数据,包括tb_commodity_id 和tb_commodity_name都能正常显示,只有图片不能正常显示,如果将head_picture.php 里面$query="select * from tb_commodity where tb_commodity_id=".$recid; 直接改成:$query="select * from tb_commodity where tb_commodity_id=1";(或者2,3,4,5,即对应的tb_commodity_id在数据库中的值)能够正常显示图片,数据库里面目前有5条数据;
改成:$query="select * from tb_commodity where tb_commodity_id=".$myrow[data].tb_commodity_id;显示tb_commodity_id=5的图片;
点击index页面不能显示出来的图片,在新标签页中打开图片,地址栏中网址是:本机名/head_picture.php?recid=5(点recid对应的图片,会显示对应的recid),页面中显示:error: mysql query

------解决方案--------------------
$query="select * from tb_commodity where tb_commodity_id=".$_GET['recid'];