2015-04-29 65 views
1

幾個星期前,我有這個HTML/PHP代碼上傳實例.txt文件到我的主機服務器上的wwwroot目錄中的特定文件夾,它都按需要工作。XAMPP php文件上傳到文件夾失敗

由於我對主機服務器的訂閱耗盡了。我被迫臨時將我所有的html/php文件複製到我的xampp(htdocs)文件夾中。現在,當我嘗試通過上傳本地主機特定的文件夾/它給了我下面的消息:

Upload failed 

Here is some more debugging info:Array 

(
    [uploaded_file] => Array 
     (
      [name] => FREESTYLE.txt 
      [type] => text/plain 
      [tmp_name] => /Applications/XAMPP/xamppfiles/temp/php5Bg8XM 
      [error] => 0 
      [size] => 34 
     ) 

) 

我不知道是怎麼回事,也許是XAMPP的配置文件,它不讓我上傳文件到任何xampp中的文件夾?

我用上傳文件的代碼是恭敬地如下:

HTML:

<!DOCTYPE html> 
<html> 
<head> 

<style type="text/css"> 
body{ 
    background-image: url("images/bg.jpg"); 
    background-color: #844903; 
    } 
    .logo{ 
    position: absolute; 
    top: 40px; 
    right: 850px; 
    } 
    h1{ 
    position: absolute; 
    top: 200px; 
    right: 820px; 
    color: #a86b00; 
    } 
    </style> 

<title></title> 
</head> 
<body> 

    <div class="logo"><img src="images/logo.jpg" alt="logo"></div> 

    <h1>Please Upload Your Notes:</h1> 

    <form enctype="multipart/form-data" action="upload.php" method="POST"> 
    <input type="hidden" name="MAX_FILE_SIZE" value="512000" /> 
    Send this file: <input name="userfile" type="file" /> 
    <input type="submit" value="Send File" /> 
    </form> 
</body> 
</html> 

PHP:

<?php 

$uploaddir = '/uploads/'; 
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']); 

echo "<p>"; 

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { 
    echo "File is valid, and was successfully uploaded.\n"; 
} else { 
    echo "Upload failed"; 
} 

echo "</p>"; 
echo '<pre>'; 
echo 'Here is some more debugging info:'; 
print_r($_FILES); 
print "</pre>"; 

?> 

任何一個想法,這是怎麼回事?

謝謝你的時間。

-M

+0

檢查您對上傳目錄的權限。您可能沒有相應的寫入權限。 – cmorse

+0

jup,已經試過了。就這一點而言,我把所有的事情都放在了775和777之間。 –

+0

'[error] => 0'表示沒有錯誤。只需在目標文件夾上設置適當的權限即可。即:'chmod 777/path/to/upload/folder /' –

回答

2

我解決了這個問題。而不是'/ uploads /'--->'uploads /',因爲它已經在htdocs文件夾中。所以這就是爲什麼它不需要第一個正斜槓。

謝謝大家把時間花在我的問題上。