2013-05-14 61 views
0

我目前在我的個人網站上學習和搞亂一些HTML和PHP。我需要使用PHP創建一個「新目錄」。PHP腳本mkdir「沒有錯誤,但沒有目錄」

我目前使用http://dummycode.com/projects/projectform/form.html爲了嘗試做到這一點。它是運行PHP腳本,但它也沒有創造/projects/projectform/dir

這裏下一個新的目錄是form.php的文件中的代碼:

<?php 
$result = mkdir("http://dummycode.com/projects/projectform/dir", 0700); 
if ($result == 1) { 
    echo "Success creating directory!"; 
} else { 
    echo "Error creating directory!"; 
} 

?> 

我似乎無法找到問題,因爲每次它說「創建目錄錯誤!」但PHP並沒有拋出任何錯誤。

有沒有簡單的我想念,或者我只是愚蠢?

感謝, 亨利·哈里斯

+0

您是否打開了PHP錯誤報告? – 2013-05-14 00:52:39

+0

我相信如此......沒有任何東西被拋出,但它沒有被創建。 – 2013-05-14 00:53:36

+0

在../projects/projectform ..中,您的特權如何? – matzone 2013-05-14 00:56:33

回答

1

您是否嘗試過使用相對路徑而不是一個網址?

2

雖然PHP 5引入用於協議包裝載體,所述載體是不普遍的,如所解釋here

5.0.0自PHP 5.0.0的mkdir()也某些URL封裝一起使用。請參閱支持的協議和封裝以獲取哪些封裝支持mkdir()的列表。

HTTP協議不支持mkdir,看here

Wrapper Summary 
Attribute         Supported 
---------------------------------------  --------- 
Restricted by allow_url_fopen    Yes 
Allows Reading        Yes 
Allows Writing        No 
Allows Appending       No 
Allows Simultaneous Reading and Writing  N/A 
Supports stat()        No 
Supports unlink()       No 
Supports rename()       No 
Supports mkdir()       No <---- 
Supports rmdir()       No 

如果你想建立一個目錄,你需要使用適當的(文件系統爲基礎的),它做的文件規範而不是網址。

什麼可能情況是,正在創建一個目錄,它只是它會被稱爲http://dummycode.com/projects/projectform/dir並在當你執行mkdir無論你的默認目錄是存在的。這將解釋爲什麼沒有錯誤以及爲什麼目錄似乎不存在。我會看看那個。

但是,這是問題的切線,可以通過不使用URL解決。

+0

我弄明白了,如果我做$ result = mkdir(「dir」);它在projectform下創建一個名爲「dir」的目錄 – 2013-05-14 01:06:35