$result = $db->exec("insert~");
でレコード登録してみるが登録されない。$resultの値も別にFALSEでは無いみたい。
C:\php\error.log確認
PHP Warning: SQLite3::exec() [sqlite3.exec]: attempt to write a readonly database in xxx.php on line 62
データベースがreadonlyだからか?
SQLite3コンストラクタの第2引数でオープン方法を指定できるが、証約時はREADWRITE | CREATEのはず…
明示的にREADWRITEを指定してみる。 → 駄目
Windows側のアクセス権かも
エクスプローラーでデータベースファイルのプロパティを開き [セキュリティ] - [編集]
アクセス許可画面が開いたら [追加]
IIS_IUSRSを検索し[OK]、変更権限を与える。
※IUSRにははじめから変更権限付いてました。
再試行 → 書き込めました。
→ データベースファイルには IIS_IUSRS と IUSR のアカウントで変更権限を与えておくこと。
0 件のコメント:
コメントを投稿