PDA

Click to See Complete Forum and Search --> : storing the .jpg file in the database


learnvb1
Dec 9th, 2009, 02:58 AM
Hi

I have a database in which i am storing the name of the image file and i am storing the image in a folder ../images

Now i have developed a page through which i insert the records in the database. i have used the dreamweaver to put the form -> file attribute on the page but how do i store the file in the ../images folder.

my code from the page is as below


<?php require_once('Connections/product.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO product (Name, Comments, image_name) VALUES (%s, %s, %s)",
GetSQLValueString($_POST['p_name'], "text"),
GetSQLValueString($_POST['description'], "text"),
GetSQLValueString($_POST['photo'], "text"));

mysql_select_db($database_product, $product);
$Result1 = mysql_query($insertSQL, $product) or die(mysql_error());

$insertGoTo = "insert_record.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>insert record</title>
</head>

<body>
<form action="<?php echo $editFormAction; ?>" method="POST" enctype="multipart/form-data" name="form1" id="form1">
<p>&nbsp;</p>
<p>
<label for="p_name">Product Name:</label>
<input type="text" name="p_name" id="p_name" />
</p>
<p>
<label for="description">Description</label>
<textarea name="description" id="description" cols="45" rows="5"></textarea>
</p>
<p>&nbsp;</p>
<p>
<label for="photo">Photo:</label>
<input type="file" name="photo" id="photo" />
</p>
<p>&nbsp;</p>
<p>
<input type="submit" name="send" id="send" value="Save" />
</p>
<p>&nbsp;</p>
<input type="hidden" name="MM_insert" value="form1" />
</form>
</body>
</html>

Nightwalker83
Dec 9th, 2009, 03:06 AM
If I understand you correctly you want to upload the file to the server? If so this code (http://www.vbforums.com/showthread.php?t=592316) might be of some help.

kows
Dec 9th, 2009, 10:29 AM
that's doubtful; your code is messy, and you basically just linked him to a full script that was all made for your own purpose. that's not very helpful for someone new to PHP.

take a look at this (http://ca3.php.net/manual/en/features.file-upload.post-method.php) page on handling file uploads from PHP.net. they pretty much go through how to set up your form (which you've said you've done already), and then how you can use the $_FILES array with functions like move_uploaded_file() to 'handle' your file's upload. once you do this, you can store the image's name in the database just by adding another call to your SQL query.

ask questions if you have trouble.

learnvb1
Dec 9th, 2009, 07:04 PM
that's doubtful; your code is messy, and you basically just linked him to a full script that was all made for your own purpose. that's not very helpful for someone new to PHP.

take a look at this (http://ca3.php.net/manual/en/features.file-upload.post-method.php) page on handling file uploads from PHP.net. they pretty much go through how to set up your form (which you've said you've done already), and then how you can use the $_FILES array with functions like move_uploaded_file() to 'handle' your file's upload. once you do this, you can store the image's name in the database just by adding another call to your SQL query.

ask questions if you have trouble.


that was of great help....i m thru with uploading files...getting some errors but i think i will sort out after thorough reading of the subject....thank you very much