Uploading Filetypes and placing them in seperate folders.


Posted on 16th Feb 2014 07:03 pm by admin

Hello,

first post , and asking for help im afraid. Very new to PHP, was making good progress I thought , but im stuck with this part. I have a uploading form that works perfectly and uploads everything to "uploads/images" . What Im trying to do is upload .txt or .rtf files to "uploads/text" and .jpg and .gif's to "uploads/images . I thought this wasnt going to be too difficult but im totally stuck and have spent hours trying to solve this. If anyone could help at all and show my what I'm doing wrong, Id be very very grateful!

This is the code as it stands. Right now, it ALWAYS goes to "uploadfail.php" and the file does not upload. If I remove all the code relating to filetype then both the text and image files succesully upload and I go to "uploadsucess.php"


Code: <?
require('connection.php');

//my_sql_real..... makes it safe against mysql injection

$title = mysql_real_escape_string($_POST['title']);
$date = mysql_real_escape_string($_POST['date']);
$author = mysql_real_escape_string($_POST['author']);
$description = mysql_real_escape_string($_POST['description']);
$type = mysql_real_escape_string($_POST['type']);

$imgName = $_FILES['pic']['name'];
$imgTmp = $_FILES['pic']['tmp_name'];
$imgSize = $_FILES['pic']['size'];
$imgType = $_FILES['pic']['type'];

$maxFileSize = 200000;

if ($imgType == "image/jpeg" || $imgType == "image/gif" || $imgType == "application/rtf" || $imgType == "application/x-rtf" || $imgType == "text/richtext" || $imgType == "text/plain" ) {
$error = "";



} else {
$error = "type";

}

if ($imgType == "image/jpeg" || $imgType == "image/gif" ) {
$filetype = "image";
}

if ($imgType == "application/rtf" || $imgType == "application/x-rtf" || $imgType == "text/richtext" || $imgType == "text/plain" ) {
$filetype = "text";
} else {
$filetype = "other";

}



if ($imgSize > $maxFileSize) {
$error = "size";
}

if ($error == "" && $imgName != "" && $filetype == "image" ) {
$filePath = "uploads/images/".$imgName;
move_uploaded_file($imgTmp, $filePath);







if ($error == "" && $imgName != "" && $filetype == "text" ) {

$filePath = "uploads/text/".$imgName;
move_uploaded_file($imgTmp, $filePath);










//another securtiy measure sprintf
$query = sprintf("INSERT INTO gallery(title,date,author,type,description,path) VALUES ('%s' , '%s' ,'%s' ,'%s' ,'%s' ,'%s' )", $title,$date,$author,$type,$description,$filePath);

if (!mysql_query($query, $connect)) {
die();
} else {

header("Location: uploadsuccess.php");
}
}
} else {
header("Location: uploadfail.php");
}
?>

No comments posted yet

Your Answer:

Login to answer
271 Like 42 Dislike
Previous forums Next forums
Other forums

Regular expression tips or resources
Hello! I'm having some issues implementing the appropriate regex patter to eliminate unwanted charac

array ...
hi
Code: function formatCategories($categories, $parentId)
{
// $navCat stores all child

matching numbers inside ( )
I know I can match numbers by just [0-9]+, so I thought matching numbers inside ( ) would be somethi

Help on code output
My CODE:

Code: [Select] echo "<phone>".$line["phone"].&qu

Rand() help needed
Hi all,

Can someone explain and give me a quick example of how I would go about this?

PHP Programming error. Please help!
Hi there,

Am making a website for a friend and have encountered a problem that i need fixing

SAP Logon Failed
I tried to login to SAP through MMC.

When i click start and give password.

it

IF Statement & Two Tables With Different Echoes
I'm retrieving two tables in a single query using UNION ALL, like so:

Code: $query = "SE

OOP help
okay so i have a class im making it has everything setup i just need to randomize the 2 variables an

selection tool on raster image
Hi!
I have to implement in my app a selection tool which lets users to select region of any shape

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash