0

After two days of search I come here with the hope of finding a solution. I'm trying to display the images uploaded into my database with type BLOB but there is something wrong the image is not displaying just the 64 code for the image here is the code :

<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>

the image is stored in Product Table.

  • Please check this link:-http://stackoverflow.com/questions/20556773/php-display-image-blob-from-mysql – Alive to die - Anant Apr 08 '15 at 07:38
  • What error you getting ? – US-1234 Apr 08 '15 at 07:40
  • its not clear for me but what im trying to get from product table blob image – Khalid Alharthi Apr 08 '15 at 07:48
  • The page could read from the database except image showing symbols like this ÿØÿà�JFIF��x�x��ÿá�ZExif��MM�*�����������J��������Q�������Q������tQ������t�����† ��±ÿÛ�C� ÿÛ�CÿÀ�_"�ÿÄ����������� on the webpage !! – Khalid Alharthi Apr 08 '15 at 07:51

1 Answers1

0

UPDATE

just use my example that's right below... so....

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

You can drag and drop that directly into your code. I don't know how to make it any easier than that. Please click the checkmark to the left of this answer. And click the Up Arrow as well. Thanks


PHP display image BLOB from MySQL

Community
  • 1
  • 1
Tech Savant
  • 3,686
  • 1
  • 19
  • 39