retrieving images from mysql database using php


Posted on 16th Feb 2014 07:03 pm by admin

So I've been trying to figure out how to store images in a mysql database, and as far as i can tell the images are stored but getting them out seems to be the problem.

when i try to go to the page on my webhost it says that

Did you know?Explore Trending and Topic pages for more stories like this.
"Can not select the database: Access denied for user 'testimg'@'localhost' to database 'testImages'"

and when i goto show.php?id=1 on my local mamp install it gives me all kinds of weird symbols

ÿÀ�™Ì�ÿÄ�È�������������������������� �!1AQaq"2‘¡±BR#Ábr‚’Ñ¢Â3CS$á²Òsƒ“%ðñc£Ã4â³T56Dt”E&Ód¤´ÄUu•7���!1AQaqð‘¡"2±ÁÑáñBRÂbr⢉#3ÿÚ� ��?�Ü/é -è

i've checked everything in the code a million times and searched google and this forum for anything that can help me but i haven't been able to find something that has helped me understand what exactly is going on and why


heres the upload form

<form enctype="multipart/form-data" action="insert.php" method="post" name="changer">
<input name="MAX_FILE_SIZE" value="1500000" type="hidden">
<input name="image" accept="image/jpeg" type="file">
<input value="Submit" type="submit">
</form>


this is my insert.php that processes the image after its submitted


<?php

include './database.php';


$link = mysql_connect($host, $username, $password);
if (!$link) {
die('Could not connect: ' . mysql_error());
}

mysql_select_db ($database);


if (isset($_FILES['image']) && $_FILES['image']['size'] > 0) {

$tmpName = $_FILES['image']['tmp_name'];

$fp = fopen($tmpName, 'r');
$data = fread($fp, filesize($tmpName));

$data = addslashes($data);
fclose($fp);

$query = "INSERT INTO tbl_images ";
$query .= "(image) VALUES ('$data')";
$results = mysql_query($query, $link);

print "Thank you, your file has been uploaded.";

}else{
print "No image selected/uploaded";
}

mysql_close($link);
?>

and heres the show.php that displays the image using the id

<?php

include './database.php';

@mysql_connect($host, $username, $password) or die("Can not connect to database: ".mysql_error());

@mysql_select_db($database) or die("Can not select the database: ".mysql_error());

$id = $_GET['id'];

if(!isset($id) || empty($id)){
die("Please select your image!");
}else{

$query = mysql_query("SELECT image FROM tbl_images WHERE id='".$id."'");
$row = mysql_fetch_assoc($query);
$content = $row['image'];

header("Content-type: image/jpg");
echo $content;

}

?>
No comments posted yet

Your Answer:

Login to answer
244 Like 13 Dislike
Previous forums Next forums
Other forums

eregi to preg
Im converting my regex for php 5.3 and I am stuck on the following

Code: [Select]if((eregi(&q

Using two $_POST Function / Switch () statements, second does not work.
Hi all. I’m new to php and am having a problem getting $_POST Function / switch () to work. I

Recording popularity by day, week.. all time?
Hey everyone, I'm creating a site designed around users uploading music. How can I implement a syste

error with opendir
when i do this

if ($handle = opendir($dir)) {
while (false !== ($file = readdir($han

how do i display data on a page from mysql
1 - do i use this code at the top of each of my page i wish to only alow access if there as been a s

mysql timestamp manipulation
How could I use a timestamp (e.g 2009-10-30 13:20:35 ), and with php find out if it is:

from

Problem with passing variables
I'm not really a php programmer so I'm really struggling with this issue.

I have a banner s

Default TimeZone
The server I'm working with is hosted in America so all times inserted into the database are coming

Ajax not working on IE 6 for Windows CE
I've created a webpage which uses the classis Ajax in following format:view plaincopy to clipboardpr

foreach help.
Hello all,

First time I'm attempting to use a foreach statement and was just wondering if my

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash