Du har i princip två problem här:
-
Som
$thumb
innehåller bildens binära data kommer webbläsaren inte att förstå det om du inte berättar för webbläsaren vilken data det är (t.ex.image/jpg
). -
Du måste berätta för webbläsaren var data finns.
Låt oss säga att du vill skapa en bild som visar tummen på den sidan:
<td><img src="..." alt="thumb"></td>
src
attribut talar om för webbläsaren var den kan hitta bildens data. Så den används för att lösa problem 2. Den förväntar sig en Uniform Resource Locator (URI).
Så hur får man $thumb
in i en URI? Det finns flera sätt att göra det, inklusive det ena länkade i en kommentar
.
Men om bilden inte är särskilt stor och du inte behöver ha den specifikt cachad (t.ex. HTML-koden ska cachelagras, men inte tumbilden), kan du använda en data:
URI-schema
:
$thumbSrc = 'data:image/jpg;base64,'.base64_encode($thumb);
Du kan sedan mata ut den variabeln som src
attributets värde:
<td><img src="<?php echo $thumbSrc; ?>" alt="thumb"></td>
Hoppas detta är till hjälp.
Komplett svar:
echo "<table>";
echo "<tr class ='tablehead'><td>Name</td><td>Location</td><td>Review</td><td>Image</td><td>Thumb</td></tr>";
while ($row = mysql_fetch_array($query))
{
echo "<tr>";
echo "<td>" . $row['user_fname'] . "</td>";
echo "<td>" . $row['user_location'] . "</td>";
echo "<td>" . $row['user_review'] . "</td>";
echo '<td><img src="data:image/jpg;base64,', base64_encode($row['user_thumb']), '" alt='thumb'></td>';
echo '<td><img src="data:image/jpg;base64,', base64_encode($row['user_image']), '" alt='image'></td>';
echo "</tr>";
}
echo "</table>";