2012-02-23 41 views
0

我的系統具有一個會話區域,它可以寫入和從.txt文件中繪製。我顯然可以通過我的FTP客戶端設置權限,但我希望將可寫入的函數應用於通過我的系統在PHP中上傳的所有文件。我會補充說安全不是問題。如何在文件上傳(PHP)時指定0777的chmod值?

<?php 

$adminID = $_GET['adminID']; 

$name = stripslashes(trim($_POST['name'])); 
$area = stripslashes(trim($_POST['area'])); 

mysql_query("INSERT INTO chat_rooms (id, name, area, adminID) VALUES ('', '$name', '$area', '$adminID')"); 

$image = ($_FILES['image_url']['name']); 
$empty = ''; 


if ($image == $empty) 

{ 
    echo 'NO IMAGE'; 


}else 
{ 

$target = "room/test/"; 
$target = $target .basename($_FILES['image_url']['name']); 
$target2 = basename($_FILES['image_url']['name']); 



$image_url = ($_FILES['image_url']['name']); 
$adminarea = 'admin-index.php'; 


mysql_query("UPDATE chat_rooms set file='$image_url' WHERE name = '$name'"); 



if(move_uploaded_file($_FILES['image_url']['tmp_name'], $target)) 
{ 

echo ""; 
echo "Your room has been created using the file " . basename($_FILES['image_url']['name']) ." <br /> <br /> Click <a href=".$adminarea."> here </a> to return to the admin area"; 
} 
else { 

echo "Sorry, there was a problem uploading your file."; 
} 


} 
?> 

我爲我的代碼

+0

如果你的文件系統支持的話,['chmod'(http://php.net/chmod)是一個良好的開端。如果您創建文件/目錄,請參閱['umask'](http://php.net/umask)。如何上傳文件? – hakre 2012-02-23 20:18:22

回答

2

佈局和一般語法道歉只需撥打chmod('thefile.txt', 0777)上的文件已被上傳後。

http://php.net/manual/en/function.chmod.php

+0

我仍然遇到一些麻煩,我已經在原始文章中包含了我的代碼段,希望有人能夠確定我應該使用chmod的位置。 – 2012-02-23 20:28:07

+0

@OllieJones如果它返回'true',則放入'move_uploaded_file'之後。您需要將'$ target'傳遞給'chmod()'。 – spencercw 2012-02-23 20:47:14

相關問題