Cakephp3にてブログサイトを作ろうと考えています。その際に下記のリンクにある画像掲示板を参考にしています。
「CakePHP3で画像投稿機能付き掲示板作成 第三回 画像投稿機能の実装」
リンク先 http://qiita.com/banaba0207/items/6cee4cd74b9231ca52c4
環境:
php:7.1.1
Apache/2.4.25 (Win32)
cakephp:3.2.11
MySQL:10.1.21-MariaDB
記事の内容と画像を保存しサムネイルも同時に作成する予定です。
記事との相違点
$article:記事の内容を格納するエンティティ
path:img/toukouimg
一部リンクの内容を抜粋 class ImgProcessComponent extends Component { function initialize(array $config) { $this->controller = $this->_registry->getController(); } //validation適用のため、rquestに img_name, img_ext, img_sizeを詰める function save($request) { $img = $request->data['img']; $ext = pathinfo($img['name'], PATHINFO_EXTENSION); $name = md5(uniqid(rand(), 1)).'.'.$ext;//md5(uniqid(rand(), 1))により、ユニークな文字列を生成 $request->data['img_ext'] = $ext; $request->data['img_size'] = $img['size']; $request->data['img_name'] = $name; } //オリジナルとサムネイル作成 function generate($tmp_name, $article) { move_uploaded_file($tmp_name, 'img/toukouimg/'.$article->img_name); ※ここでエラーの際にはファイルが移動されていない。 $original_file = 'img/toukouimg/'.$article->img_name;; list($original_width, $original_height) = getimagesize($original_file); ※ここでエラーがファイルの種類によって発生する。 以下略
しかし、一部の画像ファイルにおいては下記のようなエラーが発生します。
getimagesize(img/toukouimg/e882cbe0b241d92a0450cc4ee4068571.jpg): failed to open stream: No such file or directory
どうもmove_uploaded_fileがファイルによって、移動できていないことが原因のようにも思えるのですが、
アドバイス頂きたくよろしくお願いします。
ファイルの画像の容量は大きいものは3Mbyte程度でしたて、Validatoinでは10MByteまで許可しています。
全般としてファイルサイズの大きなものが引っかかっているにも感じるのですがわかっていません。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/20 11:33
2017/04/20 11:42