/    Sign up×
Community /Pin to ProfileBookmark

File uploading .. files are chmod 600

Hi ,
i installed a simple file uploading script.
Everything works fine … but the files that are uploaded are chmod 600..
But the file folder is 777.. ?

They have to be automatically 755…
It´s like when i upload something there , the files are added to a list with the uploaded files so people can download it automatically…

/upload (755)
/upload/upload.php (600)
/upload/images (777)
[url]http://www.emu-fusion.net/upload/upload.php[/url]

[code=php]<?php

//upload directory.
//change to fit your need eg. files, upload …. etc.
$upload_dir = “images”;
//number of files to upload.
$num_files = 1;
//the file size in bytes.
$size_bytes =3000000; //51200 bytes = 50KB.
//Extensions you want files uploaded limited to.
$limitedext = array(“.doc”,”.txt”);

//check if the directory exists or not.
if (!is_dir(“$upload_dir”)) {
die (“Error: The directory <b>($upload_dir)</b> doesn’t exist”);
}
//check if the directory is writable.
if (!is_writeable(“$upload_dir”)){
die (“Error: The directory <b>($upload_dir)</b> is NOT writable, Please CHMOD (777)”);
}

//if the form has been submitted, then do the upload process
//infact, if you clicked on (Upload Now!) button.
if (isset($_POST[‘upload_form’])){

echo “<h3>Upload results:</h3>”;

//do a loop for uploading files based on ($num_files) number of files.
for ($i = 1; $i <= $num_files; $i++) {

//define variables to hold the values.
$new_file = $_FILES[‘file’.$i];
$file_name = $new_file[‘name’];
//to remove spaces from file name we have to replace it with “_”.
$file_name = str_replace(‘ ‘, ‘_’, $file_name);
$file_tmp = $new_file[‘tmp_name’];
$file_size = $new_file[‘size’];

#———————————————————–#
# this code will check if the files was selected or not. #
#———————————————————–#

if (!is_uploaded_file($file_tmp)) {
//print error message and file number.
echo “File $i: Not selected.<br>”;
}else{
#———————————————————–#
# this code will check file extension #
#———————————————————–#

$ext = strrchr($file_name,’.’);
if (!in_array(strtolower($ext),$limitedext)) {
echo “File $i: ($file_name) Wrong file extension. <br>”;
}else{
#———————————————————–#
# this code will check file size is correct #
#———————————————————–#

if ($file_size > $size_bytes){
echo “File $i: ($file_name) Faild to upload. File must be <b>”. $size_bytes / 1024 .”</b> KB. <br>”;
}else{
#———————————————————–#
# this code check if file is Already EXISTS. #
#———————————————————–#

if(file_exists($upload_dir.$file_name)){
echo “File $i: ($file_name) already exists.<br>”;
}else{
#———————————————————–#
# this function will upload the files. 🙂 😉 cool #
#———————————————————–#
if (move_uploaded_file($file_tmp,$upload_dir.$file_name)) {
echo “File $i: ($file_name) Uploaded.<br>”;
}else{
echo “File $i: Faild to upload.<br>”;
}#end of (move_uploaded_file).

}#end of (file_exists).

}#end of (file_size).

}#end of (limitedext).

}#end of (!is_uploaded_file).

}#end of (for loop).
# print back button.
echo “»<a href=”$_SERVER[PHP_SELF]”>back</a>”;
////////////////////////////////////////////////////////////////////////////////
//else if the form didn’t submitted then show it.
}else{
echo ” <h3>Selecteer je samenvatting!</h3>
Max file size = “. $size_bytes / 1024 .” KB”;
echo ” <form method=”post” action=”$_SERVER[PHP_SELF]” enctype=”multipart/form-data”>”;
// show the file input field based on($num_files).
for ($i = 1; $i <= $num_files; $i++) {
echo “File $i: <input type=”file” name=”file”. $i .””><br>”;
}
echo ” <input type=”hidden” name=”MAX_FILE_SIZE” value=”$size_bytes”>
<input type=”submit” name=”upload_form” value=”Upload Now!”>
</form>”;
}

//print copyright 😉
echo”<p align=”right”><br>Script by: <a href=”http://www.maaking.com”>maaking.com</a></p>”;
?>

[/code]

please help… thanks ?

to post a comment
PHP

4 Comments(s)

Copy linkTweet thisAlerts:
@bokehOct 29.2005 — Everything works fine ... but the files that are uploaded are chmod 600...[/QUOTE]So why not just chmod them to 644 after they have been placed in the directory?
Copy linkTweet thisAlerts:
@gogobrentauthorOct 29.2005 — because they have to be automatically 644...

It´s like when i upload something there , the files is added to a list with the uploaded files so people can download it automatically...

(i´m soory if i haven´t made that clear...)
Copy linkTweet thisAlerts:
@bokehOct 29.2005 — because they have to be automatically 644...[/QUOTE]
Why? Why can't you do something like:
[code=php]move_uploaded_file($file_tmp,$upload_dir.$file_name);
chmod($upload_dir.$file_name, 644);[/code]
Copy linkTweet thisAlerts:
@SpectreReturnsOct 29.2005 — What bokeh meant to say was:
[code=php]move_uploaded_file($file_tmp,$upload_dir.$file_name);
chmod($upload_dir.$file_name, 0644);[/code]
×

Success!

Help @gogobrent spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 5.27,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @AriseFacilitySolutions09,
tipped: article
amount: 1000 SATS,

tipper: @Yussuf4331,
tipped: article
amount: 1000 SATS,

tipper: @darkwebsites540,
tipped: article
amount: 10 SATS,
)...