2014-09-03 2 views
0

파일을 열고 읽고 수정하려고합니다. 그러나 파일의 현재 경로는 읽기 전용 폴더에 저장합니다. PHP로 열 때 파일을 읽을 수는 있지만 수정할 수는 없다는 것을 의미합니다. 파일을 내 사용자 경로의 폴더로 옮기려고하면 PHP 스크립트가 파일을 찾을 수 없습니다.PHP가 읽기 전용 권한으로 인해 파일에 액세스 할 수 없습니다.

파일을 내 사용자 경로로 이동하는 것이 솔루션에서 가장 잘 추측되는데, PHP가 파일을 찾은 방법을 아는 사람이 있습니까? (또는 현재 사용하지 않는 이유)

도움을 주시면 감사하겠습니다.

<?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 :"; 
?> 
(폴더로, 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 파일을 찾는)

+0

권한을 변경하거나 이동하면 이미 답변을 알고있는 것 같습니다 –

+0

권한을 변경할 수 없으며 때마다 다시 설정됩니다. 나는 최상위 폴더를 통과하고 자신에게 소유권을 부여하려고 노력했다. 다른 게시물을 통해 내 회사에서 관리자 권한이 있어도 읽기 전용 속성을 변경할 수 없도록 컴퓨터에서 소프트웨어를 실행하는 것처럼 보입니다. 파일을 사용자 경로 (예 : C : \ Users \ Andrew \ Documents \ Project6 \ db \ SampleUsers.accdb)로 이동하면 PHP가 읽기 전용으로 연결되지 않습니다. – Alter

+1

ODBC 자체 설정 일 수 있습니까? Access 데이터베이스가 단일 사용자이고 웹 응용 프로그램 용으로 설계되지 않은 읽기 전용 파일은 https://wiki.openoffice.org/wiki/Connecting_to_Microsoft_Access와 관련이있을 수 있습니다. "파일 DSN에 연결하는 경우, 직접 사용할 수는 없지만 추가 ADO 연결 문자열이 필요합니다. 이 경우 데이터베이스 테이블은 읽기 전용이됩니다. " – MrYellow

답변

0

파일의 내용을 읽고 변수에 저장 한 다음 권한이있는 디렉토리의 다른 파일에 내용을 저장하십시오.

+0

PHP가 사용할 수있는 디렉토리가 없으면이 작업을 수행 할 수 없습니다. 사용자 폴더에 대한 권한이 있지만, PHP가 거기에서 파일을 액세스 할 수없는 이유가 있습니다. – Alter

관련 문제