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

New to Arrays
Hi I am new to PHP (a week and a half now) and I am just beginning to read about arrays. I understan

Buggy registration system
Hey, I just started scripting in PHP, and I ran into a few problems.
Code: <?php
includ

Comparing Values
Hi
I'm reading data from a database and this seems to work OK.

Each system has an associat

How to find OS bit version
How can I tell the person browsing my site is running 32, or 64 bit operating system?

search function
HI guys,

if anyone could point us in the right direction of how to do this, or provide some t

FTP Programs
Here is a list of commonly suggested FTP Programs to use:

FileZilla
SmartFTP
CuteFTP

Syntax error
hi im having a little trobble with this script
-------------------------------------------------

Filtering an Array Based on Value
I have a very simple script set up that pulls data from a database and is output using this code:

How do I send data using an html link
Hi

If I have
<a href="main_file.php">

How do I send data t

scandir clients directory
hi,
how can i scandir the clients directory? i need a script that when i click a button it will u

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