è¤æ°ãã¡ã¤ã«ã¢ãããã¼ã
ä¸é¨ã®ãã©ã¦ã¶ã§å¯è½ãªè¤æ°ãã¡ã¤ã«ã¢ãããã¼ããããå ´åã®å¦çããã£ã¦ã¿ãã
viewå´ã®è¨è¿°
<?php echo $this->Form->input('Model.filename', array('type' => 'file','multiple'=>'multiple')); ?>
åºåãããã¿ã°
<input type="file" name="data[Model][filename]" multiple="multiple" id="ModelFilename" />
controllerã§ãã¤ãã®$this->data[Model]ã§åãåããã®ãæå¾ ãã¦ããã®ã ããè¤æ°ãã¡ã¤ã«ã®ã¯ããï¼ãã¡ã¤ã«åãããã¼ã¿ãã¨ããªãã
ã¡ãªã¿ã«æå¾ ããå½¢å¼ã¯
Array ( [Model] => Array ( [filename] => Array ( [0] => Array ( [name] => [type] => [tmp_name] => /tmp/xxxxxx [error] => 0 [size] => 0 ) [1] => Array ( [name] => [type] => [tmp_name] => /tmp/zzzzzz [error] => 0 [size] => 0 ) ) ) )
ãªã®ã ããdebug($this->data)ã®åºåçµæã¯ããã ã£ãã
Array ( [Model] => Array ( [filename] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) ) )
念ã®ãã debug($this->params)ãè¦ã¦ã¿ãã¨ãã
[form] => Array ( [files] => Array ( [name] => Array ( [0] => file1.png [1] => file2.png ) [type] => Array ( [0] => image/png [1] => image/png ) [tmp_name] => Array ( [0] => /tmp/xxxxxxxxx [1] => /tmp/zzzzzzzzz ) [error] => Array ( [0] => 0 [1] => 0 ) [size] => Array ( [0] => 1234 [1] => 5678 ) ) )
çµå±ããã¡ã¤ã«ãä¸ã¤ãã¤ãã§ãã¯ãããå¦çãããã®ã«ä¸ä¾¿ãªã®ã§ãæåã«æå¾ ããå½¢å¼ã«ãªãããã«è©°ãæ¿ããè¡ã£ãã
$files = array(); foreach($this->params['form']['filename'] as $key=>$value){ foreach($value as $indx=>$data) $files[$indx][$key]=$data; }
Ajaxã使ã£ã¦ï¼ãã¡ã¤ã«ãã¤ã¢ãããã¼ãããããã¿ã¼ã³ãå¤ãã¨æãããè¤æ°ãã¡ã¤ã«ã®æ±ãã£ã¦ä»ã«æ¹æ³ã¯ãªãã®ã ãããï¼