Jump to content

Recommended Posts

Hey

 

I have this multiple image uploader form and I have added a couple of text fields into the form, so when it uploads the images, it inserts the text fields into a table.

 

I want to also insert the name of the newly uploaded files into the DB, but I cant seem to understand how they are named when uploaded..

 

So basically how do I store the 3 uploaded image names as $img1-3...

 

This is my insert statement:

 

$name = $_POST['name'];
$link = $_POST['link'];
$thing1 = $_POST['thing1'];
$thing2 = $_POST['thing2'];
$thing3 = $_POST['thing3'];
$pic1 = "??";
$pic2 = "??";
$pic3 = "??";
$sql = "INSERT INTO guides (id, name, link, thing1, thing2, thing3, pic1, pic2, pic3) VALUES ('', '".$name."', '".$link."', '".$thing1."', '".$thing2."', '".$thing3."',  '".$pic1."', '".$pic2."', '".$pic3."')";
if (!mysql_query($sql,$con))  {
  die('Error: ' . mysql_error());
  }

 

And this is the page that processes the form,

<?php  
$directory_self = str_replace(basename($_SERVER['PHP_SELF']), '', $_SERVER['PHP_SELF']);

$uploadsDirectory = 'images/guides/';

$uploadForm = 'guide-form.php';

$uploadSuccess = 'guide-success.php';

$fieldname = 'file';

$errors = array(1 => 'php.ini max file size exceeded', 
                2 => 'html form max file size exceeded', 
                3 => 'file upload was only partial', 
                4 => 'no file was attached');

isset($_POST['submit'])
or error('the upload form is neaded', $uploadForm);

$active_keys = array();
foreach($_FILES[$fieldname]['name'] as $key => $filename)
{
if(!empty($filename))
{
	$active_keys[] = $key;
}
}

count($active_keys)
or error('No files were uploaded', $uploadForm);

foreach($active_keys as $key)
{
($_FILES[$fieldname]['error'][$key] == 0)
	or error($_FILES[$fieldname]['tmp_name'][$key].': '.$errors[$_FILES[$fieldname]['error'][$key]], $uploadForm);
}

foreach($active_keys as $key)
{
@is_uploaded_file($_FILES[$fieldname]['tmp_name'][$key])
	or error($_FILES[$fieldname]['tmp_name'][$key].' not an HTTP upload', $uploadForm);
}

foreach($active_keys as $key)
{
@getimagesize($_FILES[$fieldname]['tmp_name'][$key])
	or error($_FILES[$fieldname]['tmp_name'][$key].' not an image', $uploadForm);
}

foreach($active_keys as $key)
{
$now = time();
while(file_exists($uploadFilename[$key] = $uploadsDirectory.$now.'-'.$_FILES[$fieldname]['name'][$key]))
{
	$now++;
}
}

foreach($active_keys as $key)
{
@move_uploaded_file($_FILES[$fieldname]['tmp_name'][$key], $uploadFilename[$key])
	or error('receiving directory insuffiecient permission', $uploadForm);
}

header('Location: ' . $uploadSuccess);

function error($error, $location, $seconds = 5)
{
header("Refresh: $seconds; URL=\"$location\"");
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"'."\n".
'"http://www.w3.org/TR/html4/strict.dtd">'."\n\n".
'<html lang="en">'."\n".
'	<head>'."\n".
'		<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">'."\n\n".
'		<link rel="stylesheet" type="text/css" href="stylesheet.css">'."\n\n".
'	<title>Upload error</title>'."\n\n".
'	</head>'."\n\n".
'	<body>'."\n\n".
'	<div id="Upload">'."\n\n".
'		<h1>Upload failure</h1>'."\n\n".
'		<p>An error has occured: '."\n\n".
'		<span class="red">' . $error . '...</span>'."\n\n".
'	 	The upload form is reloading</p>'."\n\n".
'	 </div>'."\n\n".
'</html>';
exit;
} 

?>

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.