2012-04-24 1 views
0

に私が使用してディスクにGDイメージを書き込むしようとしていません:PHPは、パブリックフォルダ内のファイルにイメージを書き込むことができますが、サブフォルダ

imagejpeg($gdimage, dirname(__FILE__) . $path . $fileName); 
  • 私は$path = '/public/'を設定すると、画像が作成されます。
  • セット$path = '/public/images/'私はこの警告を取得し、イメージが作成されていない場合:

    警告:imagejpeg():開くことができません「/Users/david/Documents/Developer/NetbeansProjects/aem.davidcasillas.es/書き込みのための公開/画像/ 498x282_v1_Golf-LaLlorea.jpg」:行943

上で/ユーザ/デヴィッド/ドキュメント/開発/ Netbeansのプロジェクト/ aem.davidcasillas.es/ModuloGijon.phpそのようなファイルまたはディレクトリパーミッションは次のように設定されます。

  • パブリックフォルダ:drwxr-xr-x 77 david admin 2618 24 abr 12:58 public
  • 画像フォルダ:drwxr-xr-x 6 david admin 204 24 abr 10:38 images

だから、私はimagesフォルダ内の画像を作成するcanotない理由を見ません。 私は他のサブフォルダを公開してみましたが、私はいつも同じエラーが発生します。

+1

エラーは 'No such file or directory'です。' images'は 'public'のサブディレクトリですか? lsの出力は、両方が同じ親ディレクトリにあるかのように見えます... – DaveRandom

+0

ls出力は、2つの異なるlsコマンドのコピーです。たぶんこれが混乱につながるかもしれません。 imagesはpublicのサブディレクトリです。 –

答えて

0

サブフォルダのアクセス権を書き込み可能に変更します。

chmod -R 777 public 
+0

しかし、同じアクセス許可を持つパブリックフォルダではなぜ動作しますか? –

+0

これをチェックアウト:[リンク](http://superuser.com/questions/264383/set-file-permissions-so-that-new-files-inherit-same-permissions)。フォルダは親のアクセス許可を継承していません。 –

0

解決策が見つかりました。私はNetbeansで作業していて、私のDocumentsフォルダからMAMPインストールフォルダにプロジェクトをコピーするように設定しています。 MAMPのインストールの下でdirを作成しますが、私のDocumentsフォルダプロジェクトの下には作成しません。警告パスをチェックすると、それは/ Documents/MAMPフォルダではなく、自分のDocumentsフォルダを指しています。

関連する問題