<?php
if(isset($_POST['upload']) && $_FILES['userfile']['size'] > 0)
{
$fileName = $_FILES['userfile']['name'];
$tmpName  = $_FILES['userfile']['tmp_name'];
$fileSize = $_FILES['userfile']['size'];
$fileType = $_FILES['userfile']['type'];

$fp      = fopen($tmpName, 'r');
$content = fread($fp, filesize($tmpName));
$content = addslashes($content);
fclose($fp);

if(!get_magic_quotes_gpc())
{
    $fileName = addslashes($fileName);
}

include 'config.php';
include 'opendb.php';

$query = "INSERT INTO upload (name, size, type, content ) ".
"VALUES ('$fileName', '$fileSize', '$fileType', '$content')";

mysql_query($query) or die('Error, query failed');
include 'closedb.php';

echo "<br>File $fileName uploaded<br>";
}
?>
<form method="post" enctype="multipart/form-data">
<table width="350" border="0" cellpadding="1" cellspacing="1" class="box">
<tr>
<td width="246">
<input type="hidden" name="MAX_FILE_SIZE" value="2000000">
<input name="userfile" type="file" id="userfile">
</td>
<td width="80"><input name="upload" type="submit" class="box" id="upload" value=" Upload "></td>
</tr>
</table>
</form>

config.php

<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbname = 'image_db';
?>

opendb.php

<?php
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die('Error connecting to mysql');
mysql_select_db($dbname);
?>

closedb.php

<?php
mysql_close($conn);
?>

create table

<?php
include 'config.php';
include 'opendb.php';

$query  = 'CREATE DATABASE eployee';
$result = mysql_query($query);

mysql_select_db('image_db') or die('Cannot select database');

$query = 'CREATE TABLE upload (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(30) NOT NULL,
type VARCHAR(30) NOT NULL,
size INT NOT NULL,
content MEDIUMBLOB NOT NULL,
PRIMARY KEY(id)
)';

$result = mysql_query($query);

include 'closedb.php';
?>

Recommended Answers

All 10 Replies

okay... thanks for the tutorial?

hi can anyone help to view the image uploaded in database for the code above?

Rather then save the image to the datbase, why dont you just store the image in a directory and store the location in the database?

how can i do that?

please help.

how can i do that?

I would assume it could be very simple. Every time someone uploads an image, the image is put onto the "images" directory of the site. The URL the image is uploaded to "http://yoursite.com/assets/images" + "filename.filetype" is inserted into the database. Then, you can link to or generate dynamic content with an array of images.

Is any way for sending the height and the width of the file manually, what we wants with this script?

How could I add upload progress bar for this script?
I will be thankful if somebody help me!

Member Avatar for diafol

OK, can we please stop using this thread as aa dumping ground. It was a poor thread with an ambiguous OP. This thread died of natural causes 2 years ago. There are many threads in this forum relating to uploading files to a DB. They include storing as BLOB data and also uploading to a physical location and storing the path and/or filename. Further random posts on this topic will draw negative reps and downvotes. Thank you.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.