Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用mysql_fetch_array()显示一些图像_Php_Mysql_Sql - Fatal编程技术网

Php 使用mysql_fetch_array()显示一些图像

Php 使用mysql_fetch_array()显示一些图像,php,mysql,sql,Php,Mysql,Sql,我必须创建一些php页面,允许您在mysql数据库中插入和显示一些以blob形式保存的随机图像。 好的,当我尝试它时,它告诉我错误:警告:mysql\u fetch\u array:提供的参数不是有效的mysql结果资源。 这是我的页面: $n="SELECT COUNT('id_product') FROM 'products'"; $value=mysql_query($n); do { $selectionASC='SELECT id_product FROM p

我必须创建一些php页面,允许您在mysql数据库中插入和显示一些以blob形式保存的随机图像。 好的,当我尝试它时,它告诉我错误:警告:mysql\u fetch\u array:提供的参数不是有效的mysql结果资源。 这是我的页面:

 $n="SELECT COUNT('id_product')
 FROM 'products'";
$value=mysql_query($n);

do
{
 $selectionASC='SELECT id_product 
        FROM products 
        ORDER BY id_product ASC
        LIMIT 1';
 $selectionDESC='SELECT id_product 
         FROM products 
         ORDER BY id_product DESC
         LIMIT 1';
  $ASC=mysql_query($selectionASC)
    or die ('Impossible execute the query <br />').mysql_error();
  $DESC=mysql_query($selectionDESC)
    or die ('Impossible execute the query <br />').mysql_error();

  //____________________________________________________________________
  $rand_n=rand(($ASC-1),($DESC+1));

  //____________________________________________________________________
  $selected='SELECT id_product,name, price, img
         FROM products
         WHERE id_product='.$rand_n;
  //____________________________________________________________________
  while($row=mysql_fetch_array($selected))
        {
            echo "Product'id: &nbsp"; echo $row[0];
            echo '<br />';
            echo "Name: &nbsp"; echo $row[1];
            echo '<br />';
            echo "Price:: &nbsp"; echo $row[2];
            echo '<br />';
            echo "Immage: <img src='images/".$row['img']."' alt='Image'>";;
            echo '<hr> <br />';

            $value--;
        }
}
while ($value==0)
有人能告诉我哪里错了吗?谢谢,对不起,我的英语很差

编辑:

}不要在数组中传递img。您必须传递索引号,因为您使用了mysql\u fetch\u数组 那么,替换代码中的这一行

  echo "Immage: <img src='images/".$row['img']."' alt='Image'>";;

根据你的代码,我发现你错过了

$selected=mysql\u查询$selected

超出

而$row=mysql\u fetch\u array$处于选中状态{ ........ }


勾选此项会对您有所帮助。

我认为这里的问题是$rand\n=rand$ASC-1,$DESC+1$ASC和$DESC不是整数,您可能应该使用 $ASC=mysql\u num\u行$ASC; $DESC=mysql\u num\u rows$DESC; 然后您可以使用$rand_n=rand$ASC-1、$DESC+1


谢谢,它很有用!但是,在图像之外的地方,它会标记源代码。有什么建议吗?什么意思?请再解释一次当我在我的服务器上运行页面时,页面工作并显示除图像以外的所有内容。取而代之的是一些字符,不是二进制代码,而是类似这样的:@aCf124sf等等。你为什么要存储二进制代码?你不能只存储图像路径吗?老实说?其实我不知道怎么做!这是我第一次必须管理此类数据。
  echo "Immage: <img src='images/".$row['img']."' alt='Image'>";;
echo "Immage: <img src='images/".$row['3']."' alt='Image'>";
while($row=mysql_fetch_assoc($selected))
        {
            echo "Product'id: &nbsp"; echo $row['id_product'];
            echo '<br />';
            echo "Name: &nbsp"; echo $row['name'];
            echo '<br />';
            echo "Price:: &nbsp"; echo $row['price'];
            echo '<br />';
            echo "Immage: <img src='images/".$row['img']."' alt='Image'>";
            echo '<hr> <br />';

            $value--;
        } 
 $selected='SELECT id_product,name, price, img
     FROM products
     WHERE id_product='.$rand_n;
 $selected = mysql_query($selected);

while($row=mysql_fetch_assoc($selected))
    {
        echo "Product'id: &nbsp"; echo $row['id_product'];
        echo '<br />';
        echo "Name: &nbsp"; echo $row['name'];
        echo '<br />';
        echo "Price:: &nbsp"; echo $row['price'];
        echo '<br />';
        echo "Immage: <img src='images/".$row['img']."' alt='Image'>";
        echo '<hr> <br />';

        $value--;
    }