Hello,
I have pictures stored in a database, when I will see them I get only
placeholder of pictures but not the picture self. What is wrong in my code?
Please help me.
Code section:
1) PHP-HTML for storing:
<?
if (!isset($img1)) {
header("Location: http://localhost/php/insert_file.html");
exit;
}
$db = mysql_connect() or die("Can't connect to server.");
mysql_select_db("media", $db) or die("Can't select database.");
$binary_junk = addslashes(fread(fopen($img1, "r"), filesize($img1)));
$insert_data = "INSERT INTO images(img_id, binary_junk, filename, filesize,
filetype) VALUES ('4', '$binary_junk', '$img1_name', '$img1_size',
'$img1_type')";
mysql_query($insert_data) or die("Couldn't insert data.");
?>
<HTML>
<HEAD>
<TITLE>Successful File Insertion!</TITLE>
<BODY>
<H1>Success!</H1>
<P>You have inserted the following into your database:<br>
<? echo "$img1_name"; ?>, a <? echo "$img1_size"; ?> byte file with a mime
type of <? echo "$img1_type"; ?>.</P>
</BODY>
</HTML>
2) Html for viewing:
<HTML>
<HEAD>
<TITLE>My Image</TITLE>
</HEAD>
<BODY>
<H1>Look at this:</H1>
<IMG SRC="show_image2.php">
</BODY>
</HTML>
3) PHP for viewing:
<?
$db = mysql_connect();
$sqlab = "select img_id, filename, binary_junk, filetype from images";
$res = mysql_db_query("media", $sqlab);
$num = mysql_num_rows($res);
if ($num==0)
echo "Leider wurden keine Bilder gefunden<br>";
for($i=0; $i<$num; $i++)
{
$id = mysql_result($res, $i, "img_id");
$fn = mysql_result($res, $i, "filename");
$ft = mysql_result($res, $i, "filetype");
$bj = mysql_result($res, $i, "binary_junk");
header("Content-type: $ft");
echo "$bj" . "<p>";
}
mysql_close($db);
?>
Thanks for your help.
Damian
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]