追記しました。
cakephp2.10 で、
前回、以下のアップロードプラグインでcakephp2画像アップロードされない旨を質問させていただきましたが、
https://teratail.com/questions/103234
その際に、formタグにenctype="multipart/form-data"をいれる提案を受けました。
すると、Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Array' in 'field list',
SQL Query: INSERT INTO ●●●●●●●●●
.bottoms
(img_file_name
) VALUES (Array, '2017-12-07 14:23:36', '2017-12-07 14:23:36')
という配列がはいっているというエラーがでました。
ビュー <form action="uppp" method="POST" enctype="multipart/form-data"> <?=$this->Form->input("img_file_name",array("type" => "file"));?> <?=$this->Form->end("送信");?> </form>
public function index(){ if($this->data){ if($this->Encode->save($this->data)){ $this->Session->setFlash(__('成功しました!')); }else{ $this->Session->setFlash(__('失敗しました!')); } } }
モデル <?php App::uses('AppModel','Model'); class Encode extends AppModel{ var $name = "Encode"; var $actsAs = array( 'UploadPack.Upload' => array( 'img' => array( 'path' => ':webroot/img/:style:id.:extension', 'styles' => array( 'thumb' => '80x80' ) ) ) );
-- -- テーブルの構造 `bottoms` -- CREATE TABLE IF NOT EXISTS `bottoms` ( `id` int(11) NOT NULL AUTO_INCREMENT, `img_file_name` varchar(255) NOT NULL, `username` varchar(255) NOT NULL, `title` varchar(255) NOT NULL, `email` varchar(255) NOT NULL, `comment` longtext NOT NULL, `region_id` int(11) NOT NULL, `sregion_id` int(11) NOT NULL, `money_id` int(11) NOT NULL, `shokushu_id` int(11) NOT NULL, `koyou_id` int(11) NOT NULL, `tokushu_id` int(11) NOT NULL, `created` datetime DEFAULT NULL, `modified` datetime DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `username` (`username`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=22 ;
enctype="multipart/form-data"をいれなければ、
そのままデータベースに画像の名前がインサートされるのですが、
画像はwebroot内に上がりません。
どなたか解る方いらっしゃいますでしょうか?
回答1件
あなたの回答
tips
プレビュー