2014-09-03 68 views
0

我想打開,讀取和修改文件。但是,該文件的當前路徑將其放入只讀的文件夾中。這意味着當我用PHP打開它時,文件可以被讀取但不能被修改。當我嘗試將文件移動到我的用戶路徑中的文件夾時,PHP腳本找不到它。由於只讀權限,PHP無法訪問文件

由於文件移動到我的用戶路徑是我最好的猜測,在一個解決方案,沒有人知道如何使PHP發現一旦其存在的文件嗎? (或爲什麼它目前不)

任何幫助表示讚賞。

實施例的代碼(找到一個MDB文件,可以讀但不能寫):

<?php 
    $dbName = "C:/db/SampleUsers.accdb"; 
    $connection = odbc_pconnect("Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=" .$dbName, ";", ";"); 
    if ($connection != true){ exit; }; 
    odbc_close ($connection); 
    echo ": works :"; 
?> 

實施例的代碼(找到一個MDB文件,已許可文件夾,但該文件不會被發現)

<?php 
    $dbName = "C:\Users\Andrew\Documents\Project6\db\SampleUsers.accdb"; 
    $connection = odbc_pconnect("Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=" .$dbName, ";", ";"); 
    if ($connection != true){ exit; }; 
    odbc_close ($connection); 
    echo ": works :"; 
?> 
+0

更改其權限,或移動它,你似乎知道答案已經 – 2014-09-03 20:31:40

+0

我不能更改權限,它重置每當我做的。我已經嘗試過頂層文件夾,並給予我自己的所有權。通過其他帖子,似乎我的公司正在計算機上運行軟件,即使擁有管理員權限,也不允許我更改只讀屬性。 如果我將文件移動到我的用戶路徑(例如:C:\用戶\安德魯\文檔\ Project6 \ DB \ SampleUsers.accdb「)才把PHP甚至不會連接爲讀 – Alter 2014-09-03 20:35:37

+1

難道是ODBC本身的設置。作爲Access數據庫的只讀文件是單用戶的,而不是爲Web應用程序設計的?https://wiki.openoffice.org/wiki/Connecting_to_Microsoft_Access。這可能是相關的:「如果你將連接到一個文件DSN,你不能直接使用它,但你需要一個額外的ADO連接字符串。在這種情況下,數據庫表將是隻讀的。「 – MrYellow 2014-09-03 22:22:04

回答

0

嘗試讀取文件的內容,將其存儲到變量中,然後將內容保存到您有權限的目錄中的另一個文件中。

+0

如果沒有PHP可以使用的目錄,我無法做到這一點。我對我的用戶文件夾有權限,但由於某種原因,PHP無法從那裏訪問文件。 – Alter 2014-09-03 20:42:44

相關問題