【问题标题】:How to display mysql blob image in php form product table如何在php表单产品表中显示mysql blob图像
【发布时间】:2015-04-09 13:34:30
【问题描述】:

经过两天的搜索,我来到这里,希望能找到解决方案。 我正在尝试使用 BLOB 类型显示上传到我的数据库中的图像,但是出现问题,图像不只显示图像的 64 代码 这是代码:

<div id="container">

     <img src ="banner.jpg" width="400" height="100"/>


        <div id="menu">

            <h3>
            <li><a href="refresher.php">Home  </a> </li>
            <li><a href="refresher2.html">About  </a> </li>
            <li><a href="refresher3.html">Category  </a>

            <ul>    <li><a href="Boys.php">Boys</a></li> 
                    <li><a href="Girls.php">Girls</a></li> 
                    <li><a href="#">Uni</a></li> 
             </ul>
             </li>

            <li><a href="refresher3.html">Costume Hire  </a> </li>
            <li><a href="refresher3.html">Contact</a> </li>
            </h3>



        <!--   <meta name="ROBOTS" content="NOINDEX, NOFOLLOW" /> -->

<!-- HTML for SEARCH BAR -->
<div>
    <form id="tfnewsearch" method="get" action="http://www.google.com">
            <input type="text" class="tftextinput" name="q" size="21" maxlength="120"><input type="submit" value="search" class="tfbutton">
    </form>
<div class="tfclear"></div>
</div>
</div>

        <div id="content"> 



            <?php
                //connect to the server and create database.
                $host = "";
                $userMS = "";
                $passwordMS = "";
                $connection = mysql_connect($host,$userMS,$passwordMS) or die("Couldn't  connect:".mysql_error());
                $database = "projectDataBase";
                $db = mysql_select_db($database,$connection) or die("Couldn't select database");


                //build the table to show the records.
                echo("<table>");
                echo("<tr>
                        <th>Product ID</th>
                        <th>Product Name</th>
                        <th>Product Image</th>
                        <th>Age</th>
                        <th>Stauts</th>
                        <th>Price</th>
                    </tr>");

                    //database query to show all the records.
                $selectString = "SELECT 
Product.Product_ID,
Product.Product_Name,
Product.Image,
Gender.Gender_Description,
Category.Description,
`Status`.Availability,
 Product.Price,
 Age.Age_Description


    FROM
    Product
JOIN
    Age ON Product.Age_ID = Age.Age_ID
JOIN
    Category ON Product.Category_ID = Category.Category_ID
JOIN
    Gender ON Product.Gender_ID = Gender.Gender_ID
JOIN
    `Status` ON Product.Status_ID = `Status`.Status_ID
                              ";


                $result = mysql_query($selectString);

                    while ($row = mysql_fetch_assoc($result))
                    {
                    echo("<tr>");
                    foreach($row as $index=>$value)
                    //to show the Product image.
                    if($index == "Image")
                    {

                        echo("<td><img src = $value alt = 'Image'></td>");

                    }
                    else{
                        echo("<td>$value</td>");                    

                    }

                    $self = htmlentities($_SERVER['PHP_SELF']);
                        echo("<form action = '$self' method='POST'>");
                        echo "<input type='hidden' name='athID' value='$row[Product_ID]' >";
                        /*echo("<td><input type='submit' name='delete' value = 'Delete'/></td>");*/
                        echo ("</form>");
                        echo("</tr>");  

                    echo("</tr>");  
                }
                echo("</table>");



                /*
                echo("<table>");
        echo("<tr>
                <th>Country Code</th>
                <th>Country Name</th>
                <th>Population</th>
                <th>Image</th>
            </tr>");

        $selectString = "SELECT * from tblCountries";
        $result = mysql_query($selectString);

            while($row = mysql_fetch_assoc($result))
            {
            echo("<tr>");
            foreach($row as $index=>$value)
            //to show the country image.
            if($index == "flag_image")
            {
                echo("<td><img src = $value alt = 'countryImage'></td>");
            }
            else{
                echo("<td>$value</td>");                    

            }
            echo("</tr>");  
        }
        echo("</table>");


        */

                mysql_free_result($result);





            ?>

        </div>



        <footer>Copyright © Hucos Pucos Shop</footer>


</div>

图像存储在产品表中。

【问题讨论】:

  • 你遇到了什么错误?
  • 我不清楚,但我想从产品表 blob 图像中得到什么
  • 该页面可以从数据库中读取,除了显示像这样的符号的图像 ÿØÿà�JFIF��x�x��ÿá�ZExif��MM�*������������ J��������Q�������Q������tQ������t������† ��±ÿÛ�C�ÿÛ�CÿÀ�_ “网页上的�ÿÄ������������!!

标签: php mysql image blob


【解决方案1】:

更新

只需使用下面的示例...所以....

echo '<td><img src="data:image/jpeg;base64,'.base64_encode($value).'" alt="Image" />';

您可以将其直接拖放到您的代码中。我不知道如何使它更容易。请单击此答案左侧的复选标记。并单击向上箭头。谢谢


PHP display image BLOB from MySQL

【讨论】:

  • 看来您的英语水平可能会妨碍您。我发布的链接和我发布的代码都是如何在 PHP 中显示 blob 的示例。
  • 您能否查看我的代码和数据库以便更好地理解,您的代码对我不起作用
  • 好的,我将编辑我的答案,但您没有使用我告诉您使用的代码。
猜你喜欢
  • 2016-09-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-05
  • 1970-01-01
  • 2021-06-26
  • 2017-07-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多