質問に対する最良の回答としてCodeIgniter 2.0 を使用した複数のファイルのアップロード (配列)から、フォームの入力名として「userfile」名を変更しようとしましたが、機能しません。
function do_upload()
{
$this->load->library('upload');
$files = $_FILES;
$cpt = count($_FILES['userfile']['name']);
for($i=0; $i<$cpt; $i++)
{
$_FILES['imageoption']['name']= $files['imageoption']['name'][$i];
$_FILES['imageoption']['type']= $files['imageoption']['type'][$i];
$_FILES['imageoption']['tmp_name']= $files['imageoption']['tmp_name'][$i];
$_FILES['imageoption']['error']= $files['imageoption']['error'][$i];
$_FILES['imageoption']['size']= $files['imageoption']['size'][$i];
$this->upload->initialize($this->set_upload_options());
$this->upload->do_upload();
}
}
private function set_upload_options()
{
// upload an image options
$config = array();
$config['upload_path'] = './Images/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '0';
$config['overwrite'] = FALSE;
return $config;
}
HTMLフォームは次のとおりです。
<?php echo $errors;?>
<?php echo form_open_multipart('tryout/guru/do_upload');?>
<div id="Question1">
Image Question
<input type="file" name="imagequestion[]" size="20" />
Image Option
<input type="file" name="imageoption[]" size="20" />
<input type="file" name="imageoption[]" size="20" />
</div>
<div id="Question2">
Image Question
<input type="file" name="imagequestion[]" size="20" />
Image Option
<input type="file" name="imageoption[]" size="20" />
<input type="file" name="imageoption[]" size="20" />
</div>
<br /><br />
<input type="submit" name="submit" value="upload" />
</form>
複数のアップロードを別の名前で作成しimagequestion
、imageoption
一度に送信したい。とにかくそれを行うことはありますか?