HTML5とPHPだけで複数のファイルをアップロードすることはできますか?私は、複数のファイルを選択してループに格納し、すべてのファイルを繰り返してサーバーにアップロードすることができればと思っていました。Codeigniter HTML5で複数のファイルをアップロードする場合は、Uploadifyなどのツールを使用できますか?
しかし、Codeigniterは最初に選択したファイルのみをアップロードします。
foreach ($_FILES as $key => $value)
{
$this->upload->do_upload($key['name'])
}
私がアップロードパスとファイル名のようなものを処理するための追加のロジックを持っていますが、そのコードは罰金ですが、このループは、最初の選択ファイルと他には何のために働くようです。
HTML5とPHPを使用できない場合は、単にUploadifyを使用するか、複数のファイルのアップロードをサポートするようにアップロードクラスを変更する方法がありますか?ここで
は私の方法だ多かれ少なかれ、
public function uploadScreens($id) {
$this->load->library('upload');
$config['allowed_types'] = '*';
$config['max_size'] = '45000';
$config['max_width'] = '20000';
$config['max_height'] = '15000';
foreach ($_FILES as $key => $value)
{
if (!empty($key['name']))
{
$this->db->set('gameid', $id);
$this->db->insert('gamescreens');
$screenid = $this->db->insert_id();
$this->createDirectory($screenid);
$filename = $this->randomFilename();
$config['file_name'] = "$filename";
$config['upload_path'] = APPPATH . "../content/gamescreens/" . $screenid . '/';
$this->upload->initialize($config);
if ($this->upload->do_upload($key['name']))
{
$data = $this->upload->data();
$sourceurl = $data["full_path"];
$this->db->simple_query("update gamescreens set source = '$sourceurl' Where id=$screenid");
}
else
{
//catch eerrors
}
}
}
}
私はこれまでのループでそれを持っていましたが、複数のファイルをアップロードすることはありません。私のメソッドでコードを更新しました。 – Bombcode
$ _POST [name]は一意ですか? name_1、name_2、name_3 ... – arch
私はそうは思わない、私は複数のファイルを選択するだけです。また、ビューに1つの入力タグがあります。 – Bombcode