2012-01-31 57 views
0

我有以下代碼:網絡驅動器在Windows使用PHP的FOPEN

$file_name = "1234"; 
$filename = "L:\\videoette_converter\\batch_files\\".$file_name.'.bat'; 
if (!$handle = fopen($filename, 'a')) { 
    echo "Cannot open file ($filename)"; 
    exit; 
} 

我從代碼以下錯誤:

警告:的fopen(L:\ videoette_converter \ batch_files \ 1234.bat) [function.fopen]:未能打開流:在 C無這樣的文件或目錄:\瓦帕\ WWW \ videoette_converter \的index.php上線47

,並從我的PHP

無法打開文件(L:\ videoette_converter \ batch_files \ 1234.bat)調試線

但是該文件夾L:\videoette_converter\batch_files確實存在映射驅動器,和我已經給「每個人」都有完全的權限可能是什麼問題呢?

+0

也許這個職位上的PHP手冊可以幫助你: http://www.php.net/manual/en/function.fopen.php#83138 – 2012-01-31 11:17:40

+0

乾杯。將路徑改爲''\\\\ LAPTOP \\ laptopwww \\ videoette_converter \\ batch_files \\。。$ file_name。「。bat」',並將'wampapache'的服務用戶改爲'NT AUTHORITY \ NetworkService'(嘗試使用我的帳戶,'彗星',沒有工作)..但仍然被拒絕。 – rickyduck 2012-01-31 13:18:59

回答

0

你確定沒有域控制器的方式?

時,供應文件的Windows機器是在Active Directory域:

1)運行WAMP必須在同一個域中的機器。

2)用於在WAMP計算機上運行Apache服務的帳戶必須至少具有您要訪問的共享的讀取權限。您應該指定您的域用戶帳戶,而不是像「本地系統」或「wampapache」那樣運行Apache服務。 (P.S. .:我喜歡XAMPP通過Wamp進行這種開發,但這可能只是個人喜好)

另外我猜如果你使用UNC路徑而不是驅動器號,id'd會更好。它總是以這種方式爲我工作。你並不需要使用轉義反斜槓,你可以用單前鋒的人替換它們:

//yourwinserver/sharename/path/to/file.bat