Jump to content

Archived

This topic is now archived and is closed to further replies.

Tjobbe

Capturing and storing an uploaded filename

Recommended Posts

I have a form that submits text data to a database (mysql), whilst uploading an image to a folder.

I'd like to store the file path or name in the database entry alsongside the rest of the data.

How do i capture the filename and submit it to be stored?

here is what I have;

index.php
[code=php:0]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>
<form enctype="multipart/form-data" action="store_image.php" method="post">
Title:<br />
<input type="text" name="title" /><br />
Content:<br />
<textarea rows="12" cols="50" name="content"></textarea><br />
<select name="category" id="category">
<option>blog</option>
<option>web</option>
</select>
<br />
    <input type="hidden" name="MAX_FILE_SIZE" value="300000" />
    <!-- Name of input element determines name in $_FILES array -->
    Send this file: <input name="userfile" type="file" />
<br />
<input type="submit" />
</form>
</BODY>
</HTML>
[/code]

store_image.php
[code=php:0]
<?php

include "dbconnect.php";

$uploaddir = 'images/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
  echo "File is valid, and was successfully uploaded.\n";

$title=$_POST['title'];
$content=$_POST['content'];
$category=$_POST['category'];
$image=$uploadfile;

$sqlquery = "INSERT INTO $category VALUES(id,'$title','$content',NOW()),'$image'";

$results = mysql_query($sqlquery) or die(mysql_error());

} else {
  echo "Possible file upload attack!\n";
}
echo "<br /><img src=\"$uploadfile\" />";
?>
[/code]

Share this post


Link to post
Share on other sites
use the $_FILE array. Have a look at the link below and download the manual then search for $_FILE. There are alot of examples there. If you still need help I have post an upload script here before.

Remember to check the file name first and get ride of spaces etc and ensure that two names are not the same.

Share this post


Link to post
Share on other sites

×

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.