Jump to content


Photo

Simple Biography Script


  • Please log in to reply
2 replies to this topic

#1 corc

corc
  • Members
  • Pip
  • Newbie
  • 5 posts
  • LocationUNCA

Posted 14 September 2006 - 05:24 PM

Ok, so I'm working on a script, very simple, that uses four form elements. A file (image) upload, First name, Last name, and year (school year..freshman, sophomore, junior, senior). What I need to happen is for the first name, last name, year, and image name elements to be inserted into a mysql database. The image also needs to be uploaded, and the filename changed to essentially firstnamelastname.jpg (assuming it's a jpg file). I can get the file to upload, but it retains the original filename. I can get the form elements to post to the database (not a problem for me, just haven't written that part yet). So I need to figure out:

1. How to change the filename.
2. Check for a jpg image type.
3. If possible, avoid having to chmod a directory to 777 for all this to work.
4. Maybe a little security?

Here's what I've got so far, it's sloppy..I apologize:

<?php
// Set Upload Directory
$uploadtmpdir = '';
$uploaddir = '';

// Error Handling
ini_set ('display_errors', 1);
ini_set ('upload_tmp_dir','$uploadtmpdir');
error_reporting (E_ALL & ~E_NOTICE);

// Check for submission
if (isset ($_POST['submit'])) {
	$writebio = "INSERT INTO park_bios (first_name, last_name, year) VALUES ('{$_POST['firstname']}', '{$_POST['lastname']}', '{$_POST['year']}')";

	if (move_uploaded_file ($_FILES['thefile']['tmp_name'], "{$uploaddir}/{$_FILES['thefile']['name']}")) {
	print($_FILES['name']);
		print ("<p>Your file has been uploaded</p>");
		$writepic = "UPDATE park_bios SET pic='{$_POST['posttitle2']}', content='{$_POST['postcontent2']}', poster='{$_POST['poster2']}' WHERE news_id='{$_POST['enewsset']}'";

	} else {
	
		print ("<p>Your file could not be uploaded because: <b>");

		switch ($_FILES['thefile']['error']) {
			case 1:
				print 'The file exceeds the upload_max_filesize setting in php.ini';
				break;
			case 2:
				print 'The file exceeds the MAX_FILE_SIZE setting in the HTML form';
				break;
			case 3:
				print 'The file was only partially uploaded';
				break;
			case 4:
				print 'No file uploaded';
				break;
		}

	}

}

?>

<form action="uploadfile01.php" enctype="multipart/form-data" method="post">
<p>Upload a file using this form: <br /><br />
<input type="hidden" name="MAX_FILE_SIZE" value="500000" />
<input type="file" name="thefile" /><br /><br />
First Name: <input type="text" size="20" name="firstname" /><br /><br />
Last Name: <input type="text" size="20" name="lastname" /><br /><br />
<input type="submit" name="submit" value="Upload this file" />
</p>
</form>

Any suggestions? I've looked through some old topics on similar issues, but most of them make it more complicated than I think it needs to be.

#2 hostfreak

hostfreak
  • Members
  • PipPipPip
  • Advanced Member
  • 581 posts

Posted 14 September 2006 - 05:37 PM

I am not sure if it will work, but for renaming the files maybe you should look into the built-in rename function: http://php.net/rename

#3 hostfreak

hostfreak
  • Members
  • PipPipPip
  • Advanced Member
  • 581 posts

Posted 14 September 2006 - 05:44 PM

Oh, and this may help you with some of your other questions: http://www.developer...int.php/1456041




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users